MFC CFile Seek 関数を使用しています。ファイルの長さを超えるシークについて問題があります。
CFile cfile;
BOOL bResult = cfile.Open(
L"C:\\2.TXT",
CFile::modeReadWrite |
CFile::modeCreate |
CFile::modeNoTruncate |
CFile::typeBinary |
CFile::shareDenyNone);
cfile.Seek(10000, CFile::End);
cfile.Close();
MSDN: 備考
Seek 関数は、ポインタを絶対的または相対的に指定した量だけ移動することにより、ファイルの内容へのランダム アクセスを許可します。シーク中に実際に読み取られるデータはありません。要求された位置がファイルのサイズよりも大きい場合、ファイルの長さはその位置まで拡張され、例外はスローされません。
MSDN によると、ファイルの長さは拡張されます。ただし、 の後cfile.Close()
、ファイルは同じままです。なぜですか?どうもありがとうございました!