我使用ch.systemsx.cisd.hdf5.HDF5Factory(JHDF5)
提供的库来读取HDF5文件。他们的文档链接不能正常工作,我不知道接下来要为此获得解决方案。
有没有人知道如何使用上面的java库从HDF5文件中读取属性值?
答案 0 :(得分:1)
经过大量的试验和错误后找到了解决方案。请在下面找到代码,从HDF5文件中读取属性值。
nwbFile - HDF5文件的名称(应该打开)。 attributeName:属性的名称。 path - 需要读取其属性的文件中的节点的路径。
DataFormat dataset = (Dataset) FileFormat.findObject(nwbFile, path);
List<Attribute> attributes = dataset.getMetadata();
for(Attribute a : attributes)
{
if(a.getName().equals(attributeName))
{
Object obj = a.getValue();
if (obj instanceof double[])
{
Double d = ((double[]) obj)[0];
return d.toString();
}
else if (obj instanceof String[])
{
return ((String[]) obj)[0];
}
}
}