C++ 如何检查文件是否为有效的HDF5文件?

C++ 如何检查文件是否为有效的HDF5文件?,c++,validation,hdf5,hdf,C++,Validation,Hdf5,Hdf,根据给出的示例,我将一个文件图像作为字符串加载到内存中,并带有一个有效的处理程序。这是使用H5LTopen\u file\u image()完成的 如何检查文件是否为有效的HDF5文件 我只找到一个名为的程序,它有一个复杂的源代码。因此,我想知道,是否有一个简单的函数,带有一个简单的返回值来验证hid\u t处理程序中的任何内容是否是有效的HDF5文件?在C++中: std::string filename = "foo.h5"; if(!H5::H5File::isHdf5(f

根据给出的示例,我将一个文件图像作为字符串加载到内存中,并带有一个有效的处理程序。这是使用
H5LTopen\u file\u image()
完成的

如何检查文件是否为有效的HDF5文件

我只找到一个名为的程序,它有一个复杂的源代码。因此,我想知道,是否有一个简单的函数,带有一个简单的返回值来验证
hid\u t
处理程序中的任何内容是否是有效的HDF5文件?

在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')

我认为这是一个错误,否则。