首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++ BinaryReader和BinaryWriter

C++ BinaryReader和BinaryWriter
EN

Stack Overflow用户
提问于 2010-11-22 10:57:22
回答 4查看 6.7K关注 0票数 2

我需要将一个整数数组作为二进制写入输出文件,并在C++ Linux中的程序中将二进制数据读取为整数,类似于C#中的BinaryReader和BinaryWriter。我怎么能这么做呢?

谢谢

EN

回答 4

Stack Overflow用户

发布于 2010-11-22 11:25:54

除非有其他突出的原因,否则通常会使用std::ostream::writestd::istream::read。由于生成的是二进制流,因此在打开文件时通常还需要指定std::ios::binary

票数 4
EN

Stack Overflow用户

发布于 2010-11-22 11:40:39

只是为了充实一下曾傑瑞和J-16 SDiZ的建议:

代码语言:javascript
复制
std::ofstream file(filename, ios::binary);
myFile.write (static_cast<const char*>(&x), sizeof x);
...
file.read(static_cast<char *>(x), sizeof x);

此外,如果需要更高的可移植性,您可能需要考虑将数据放在网络字节顺序中:请参阅您系统上的ntohl等人的手册页(或等效内容)。

票数 2
EN

Stack Overflow用户

发布于 2010-11-22 11:28:41

int数组转换为(char*)并使用istream::read / ostream::write

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4241890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档