質問

Visual C ++ 2008でCreateFileAとReadFileを使用して、ASCIIテキストファイルを開いてメモリに読み込みます。これは問題なく動作します(メモリ内のコンテンツを表示できます)が、例外が1つあります。何らかの理由で、TAB文字(0x09)がNULL(0x00)に変更されています。言うまでもなく、ファイルを解析しようとすると、これは大混乱になります。誰がこれを引き起こしているのか、どのように修正するのかを知っていますか?

これは、ファイルを開く方法です。

hHandle = CreateFileA( pPath, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
GetFileSizeEx( hHandle, &tFileSize );
pBuf = (UINT8 *)malloc( tFileSize.LowPart );
ReadFile( hHandle, pBuf, tFileSize.LowPart, &dwBytesRead, NULL );

プロジェクトコードには堅牢なエラー処理機能があり、エラーは発生していません。任意の提案をいただければ幸いです。

ありがとう。

役に立ちましたか?

解決

これは本当にありそうもないようです。他のツールを使用してディスク上のファイルを調べ、タブ文字が存在することを確認しましたか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top