我正在使用 fstream 写入二进制文件,并在打开文件时使用二进制标志。
我需要将一些文本写成二进制文件,简单的写入就可以了。 问题是我还需要写入(如十六进制所示)0。在二进制记事本中打开时的值显示为零,但是当尝试写入此值时,该值不为零,它的十六进制值为 30。
这样具体的数据怎么写?
最佳答案
您可能只需要这样的东西,根据需要进行改进:
ofstream file("output.bin", ios::out | ios::binary);
if (file.good())
{
char buf[1] = {0};
file.write(buf, sizeof(buf));
file.close();
}
指向更复杂的解决方案和文档的链接已经发布。
关于c++ - 写入二进制数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1400961/