如何从c ++中的HDF5文件中读取属性名称和数据集名称,这里我不知道HDF5文件中有哪些属性

问题描述 投票:0回答:2

我有一个HDF5文件说Select.h5,但我不知道除文件名之外的任何文件,如何使用c ++从该文件名中知道属性名称和数据集名称

c++ hdf5
2个回答
0
投票

我们可以使用组ID实现此目的,一旦您创建了HdF5文件,默认组将创建名称为'/'(表示根组),

所以从该组我们可以使用DataSet元数据获取HDF5文件的DataSet信息,我们获取有关属性的信息,包括其名称


0
投票

在C ++中使用HDFql(http://www.hdfql.com),可以打开名为“example.h5”的HDF5文件,如下所示:

HDFql::execute("USE FILE example.h5");

从那里,检索存储在组“/”中的对象名称(即组,数据集,属性)(即HDF5文件的根目录)可以如下完成:

HDFql::execute("SHOW /");

要仅检索存储在“/”中的属性,请包含关键字ATTRIBUTE:

HDFql::execute("SHOW ATTRIBUTE /");

要检索HDF5文件中存在的所有对象(从“/”开始),请使用关键字“LIKE **”:

HDFql::execute("SHOW / LIKE **");

要检索HDF5文件中存在的所有数据集(从“/”开始):

HDFql::execute("SHOW DATASET / LIKE **");
© www.soinside.com 2019 - 2024. All rights reserved.