【问题标题】:Create hard/soft links in HDF5 C++ A{O在 HDF5 C++ A{O 中创建硬/软链接
【发布时间】:2022-12-03 12:25:59
【问题描述】:

我有一个 H5::Dataset,我不想让它可以从多个 H5::Groups 访问。我知道这可以使用硬链接或软链接,但我完全不知道如何使用 C++ API 添加此链接。

我已经看到在 Python 中可以做到

grp["name"] = h5py.SoftLink(target_path)

但我在 C++ 中找不到类似的东西。

我怎样才能做到这一点?

【问题讨论】:

    标签: c++ hdf5


    【解决方案1】:

    如果您没有绑定到特定的 API,您可能想尝试HDFql,因为它极大地减轻了用户对 HDF5 低级细节的影响。在 C++ 中使用 HDFql,您的问题可以按如下方式解决:

    // create an HDF5 file named 'test.h5' and use (i.e. open) it 
    HDFql::execute("create and use file test.h5");
    
    // create a dataset named 'dset' of data type integer which stores value '10'
    HDFql::execute("create dataset dset as int values(10)");
    
    // create three groups named 'grp1', 'grp2' and 'grp3'
    HDFql::execute("create group grp1, grp2, grp3");
    
    // create a (soft) link named 'lnk' in groups 'grp1', 'grp2' and 'grp3' (all these links point to dataset 'dset')
    HDFql::execute("create link grp1/lnk, grp2/lnk, grp3/lnk to /dset, /dset, /dset");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-08
      • 2016-02-11
      • 1970-01-01
      相关资源
      最近更新 更多