0

ファイルに直接書き込む必要があります(ファイルの形式/拡張子は関係ありません)。私ができるようにしたいのは、たとえばAを書き込むことです。ファイルを16進エディターで開くと、A、つまり10進数の値10が表示されます。

4

2 に答える 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'と、16 進エディタに 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 に答える