我需要直接写入文件(文件格式/扩展名无关紧要)。我想要做的是,例如向它写入A,如果我用十六进制编辑器打开文件,它将显示A,也就是十进制值10。
问问题
163 次
2 回答
4
#include <iostream>
int main()
{
std::ofstream fout("myfile.ext", std::ios::binary);
std::ofstream::char_type byte = 10; //or = 0xA
fout.put(byte);
}
于 2013-02-14T11:59:02.377 回答
1
好吧,如果您写入'A'
文件,我希望十六进制编辑器显示 41。
但是,假设我们有一个int x = 0xa;
,那么将其写入文件的方法是:
int x = 0xa;
ofstream out("myfile.txt", ios::out|ios::binary);
out.write((char *)&x, sizeof(x));
out.close();
请注意,此代码的可移植性不高,因为int
整数中字节的大小和顺序可能因架构而异。
于 2013-02-14T12:01:18.067 回答