包含异构行的数据包表

时间:2013-12-21 14:54:20

标签: c++ hdf5

我正在尝试使用C ++ API在HDF5中存储一些数据,但有几个要求:

  1. 可以存储任意数量的条目,
  2. 每个条目具有相同的行数(类型为int和double),
  3. 应在运行时确定行的数量和类型。
  4. 我认为实现此方法的正确方法是作为数据包表,但example I've been able to find每个条目只存储一个本机类型。我想存储几个,类似于复合数据类型,但example I found还不够,因为它存储了一个无法在运行时写入的结构。是否有一些例子可以做到这一点?或者只是我错过了一些高级API?

1 个答案:

答案 0 :(得分:0)

你还在寻找答案吗?我完全不知道你的意思。

数据包表是一种特殊形式的数据集。数据包表中的记录数可以是无限的。

由于您提到在编译时为复合数据类型设置struct的大小不适合您,您可能会尝试将数据分开并以某种方式关联它。

可以将隔离的数组写入数据集,并在运行时设置其等级和大小。

HDF文件中的数据可以使用您自己的方法或使用HDF链接进行链接。您可以将各个阵列数据记录与匹配的化合物数据(如果有)链接在一起。

希望有所帮助。