检查HDF5文件的有效性

时间:2015-07-11 09:37:59

标签: c++ validation hdf5 hdf

基于给定here的示例,我将文件图像作为带有效处理程序的字符串加载到内存中。这是使用H5LTopen_file_image()完成的。

现在我的问题是,如何检查这是一个有效的HDF5文件?我发现只有一个名为H5check的程序,它有一个复杂的源代码。所以我想知道,是否有一个带有简单返回值的简单函数来验证hid_t处理程序中的任何内容是否是有效的HDF5文件?

1 个答案:

答案 0 :(得分:0)

在C ++中:

    std::string filename = "foo.h5";
    if(!H5::H5File::isHdf5(filename.c_str()))
    {
        std::string err_msg = filename + " is not an HDF5 file.\n";
        throw std::logic_error(err_msg);
    }

在Python中,使用

import h5py
if not h5py.is_hdf5('foo.h5'):
    raise ValueError('Not an hdf5 file')