c++二进制文件怎么读取和写入

c++
1144
2024/6/4 16:20:15
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C++中,可以使用fstream库来处理二进制文件的读取和写入操作。下面是一个简单的示例:

#include <iostream>
#include <fstream>

int main() {
    // 写入二进制文件
    std::ofstream out("binary_file.dat", std::ios::binary);
    if (out.is_open()) {
        int data[] = {1, 2, 3, 4, 5};
        out.write(reinterpret_cast<char*>(data), sizeof(data));
        out.close();
    } else {
        std::cout << "Failed to open file for writing" << std::endl;
    }

    // 读取二进制文件
    std::ifstream in("binary_file.dat", std::ios::binary);
    if (in.is_open()) {
        int data[5];
        in.read(reinterpret_cast<char*>(data), sizeof(data));
        for (int i = 0; i < 5; i++) {
            std::cout << data[i] << " ";
        }
        std::cout << std::endl;
        in.close();
    } else {
        std::cout << "Failed to open file for reading" << std::endl;
    }

    return 0;
}

在上面的示例中,我们首先创建一个ofstream对象来写入二进制文件,然后使用write方法将数据写入文件。接着创建一个ifstream对象来读取二进制文件,通过read方法将文件中的数据读取到一个数组中。最后输出读取到的数据。

需要注意的是,在读取和写入二进制文件时,需要使用std::ios::binary标志来指示文件以二进制模式打开。同时,需要使用reinterpret_cast将数据转换为char*类型以便进行读写操作。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 如何实现C++二维向量的转换和投影