0
我在Visual C++ 2008中使用CreateFileA和ReadFile打開並將ASCII文本文件讀取到內存中。這工作正常(我可以在內存中查看它的內容),但有一個例外。出於某種原因,TAB字符(0x09)正在變爲NULL(0x00)。不用說,當我嘗試解析文件時,這會造成嚴重破壞。有人知道可能是什麼原因造成的,或者我可以如何解決這個問題?讀取ASCII文件選項卡替換爲NULL
這是我如何打開文件:
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);
我的項目代碼具有健壯的錯誤處理,和我沒有得到任何錯誤。任何建議,將不勝感激。
謝謝。
其實,我想我只是找到了答案。看起來strtok_s在每個標記在字符串中移動時用NULL代替。 – 2009-09-14 20:08:35
是的,那樣做... – 2009-09-14 23:50:12