0

0

c++中如何写入二进制文件_c++写二进制文件方法

冰火之心

冰火之心

发布时间:2025-10-10 10:06:02

|

202人浏览过

|

来源于php中文网

原创

答案是使用fstream类并指定ios::binary模式。包含fstream头文件,用std::ofstream以std::ios::out | std::ios::binary打开文件,检查是否成功,然后写入二进制数据。

c++中如何写入二进制文件_c++写二进制文件方法

在C++中写入二进制文件,主要使用标准库中的 fstream 类,并指定二进制模式。关键在于打开文件时使用 ios::binary 标志,避免文本模式下的自动字符转换。

1. 包含必要的头文件

需要包含 fstream 头文件来操作文件:

#include

2. 打开文件并设置为二进制写入模式

使用 std::ofstream 创建输出流,并以二进制方式打开文件:

std::ofstream file("data.bin", std::ios::out | std::ios::binary);
if (!file) {
    // 处理文件打开失败
    std::cerr
    return -1;
}

3. 使用 write() 写入二进制数据

write() 函数用于将内存中的原始字节写入文件。它接受两个参数:数据地址和字节数。

// 示例:写入一个整数
int value = 12345;
file.write(reinterpret_cast(&value), sizeof(value));

// 示例:写入一个字符数组(字符串的二进制形式)
char str[] = "Hello Binary";
file.write(str, sizeof(str));

// 示例:写入结构体
struct Person {
    int age;
    double height;
    char name[32];
};
Person p{30, 1.75, "Alice"};
file.write(reinterpret_cast(&p), sizeof(p));

4. 关闭文件

写入完成后,关闭文件以确保数据被正确保存:

file.close();

家饰网上商城系统
家饰网上商城系统

虚拟主机或在自备服务器中开设好的主机空间,主机环境要求:PHP4.3-5.x/非安全模式/允许WEB文件上传MYSQL4.2-5.xzend optimizer 3.2以上安装方法:1、将安装包解压后,将全部文件和目录上传到网站空间根目录, 用FTP上传时必须采用二进制方式。2、运行http://您的域名/(安装向导),或者进入网站安装http://您的域名/base/install/,填写MYS

下载

完整示例代码

#include
#include
int main() {
    std::ofstream file("example.bin", std::ios::out | std::ios::binary);
    if (!file) {
        std::cerr
        return -1;
    }

    int num = 999;
    double pi = 3.14159;
    file.write(reinterpret_cast(&num), sizeof(num));
    file.write(reinterpret_cast(&pi), sizeof(pi));

    file.close();
    std::cout
    return 0;
}

基本上就这些。只要记住用 ios::binary 模式打开文件,再用 write() 把数据按字节写进去,就能正确生成二进制文件。读取时使用 std::ifstreamread() 方法即可。注意跨平台时数据对齐和字节序问题可能影响兼容性。不复杂但容易忽略细节。

相关专题

更多
if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

737

2023.08.22

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

37

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

37

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

16

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

45

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
C# 教程
C# 教程

共94课时 | 6.7万人学习

C 教程
C 教程

共75课时 | 4万人学习

C++教程
C++教程

共115课时 | 12.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号