c++

如何在C++中读写HDF5文件

小樊
165
2024-08-22 14:34:30
栏目: 编程语言

在C++中读写HDF5文件,你需要使用HDF5的C++接口。以下是一个简单的示例代码,演示如何使用HDF5库读写HDF5文件:

#include <iostream>
#include "H5Cpp.h"

using namespace H5;

const H5std_string FILE_NAME("test.h5");
const H5std_string DATASET_NAME("data");

int main()
{
    // Create a new HDF5 file
    H5File file(FILE_NAME, H5F_ACC_TRUNC);

    // Create a simple dataspace
    hsize_t dims[2] = {2, 2};
    DataSpace dataspace(2, dims);

    // Create a dataset in the file
    DataSet dataset = file.createDataSet(DATASET_NAME, PredType::NATIVE_DOUBLE, dataspace);

    // Write data to the dataset
    double data[2][2] = {{1.0, 2.0}, {3.0, 4.0}};
    dataset.write(data, PredType::NATIVE_DOUBLE);

    // Read data from the dataset
    double read_data[2][2];
    dataset.read(read_data, PredType::NATIVE_DOUBLE);

    // Output the read data
    for(int i = 0; i < 2; i++)
    {
        for(int j = 0; j < 2; j++)
        {
            std::cout << read_data[i][j] << " ";
        }
        std::cout << std::endl;
    }

    return 0;
}

在这个示例中,我们首先创建了一个HDF5文件,并在文件中创建了一个名为"data"的数据集。然后,我们将数据写入数据集,并读取了数据集中的数据。最后,我们输出了读取的数据。

请注意,为了使用HDF5库,你需要安装HDF5库并包含"H5Cpp.h"头文件。你可以在HDF5的官方网站上找到更多关于HDF5的文档和示例代码。

0
看了该问题的人还看了