具有异构行的数据包表

packet table with heterogeneous rows

本文关键字:数据包 异构      更新时间:2023-10-16

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

  1. 可以存储任意数量的条目,
  2. 每个条目具有相同的行数(int 和 double 类型),
  3. 行的数量和类型应在运行时确定。

我认为实现这一点的正确方法是作为数据包表,但是我能够找到的示例每个条目仅存储一种本机类型。我想存储几个,类似于复合数据类型,但我发现的示例再次不够,因为它存储了一个结构,无法在运行时编写。是否有一些这样做的例子?或者只是我错过的一些高级 API?

你还在找答案吗?我无法弄清楚你到底在追求什么。

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

由于您提到在编译时为复合数据类型设置结构大小对您不起作用,因此您可以尝试分离数据并以某种方式关联它。

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

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

希望有帮助。