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