0

2 つの部分がある大きなドキュメントがあります。1 つ目はヘッダーで、標準文字を使用し、 で終わり[END]ます。2 番目の部分はバイナリで、次のようになりますNUL DLE NUL DC1 NUL。ifstream を使用してこのドキュメントを読み込もうとしています。私のコードは次のとおりです。

std::string filename = "file.txt";
std::ifstream originalFile;
originalFile.open(filename,std::ios::binary);

std::streampos fsize = 0;
fsize = originalFile.tellg();
originalFile.open(0,std::ios::end);
fsize = originalFile.tellg() - fsize;

char * buffer = new char [int(fsize)];
originalFile.seekg(0,std::ios::beg);
originalFile.reade(buffer,fsize);

std::cout << fsize << std::endl;
std::cout << buffer << std::endl;

実行すると、プログラムはファイルのヘッダー全体を出力してから終了します。バイナリ データにアクセスしたり、印刷したりすることはありません。これは使用する正しいコマンドですか? そうでない場合、他に試すことができるものはありますか?

4

1 に答える 1