CFile输出TXT文件有有关问题
CFile输出TXT文件有问题
有一个TXT文件,已经另存为 Unicode 编码。里面的内容是:
现在用下面的代码输出
但是只输出了一个不认识的字 ------ “﨧”。我记得以前有人告诉过我,需要在TXT前面加两个字符,我忘了是什么了。哪位知道。另外,那两个字符应该复制到TXT前面,还是复制到 buffer 的前面、顺便在解释一下那两个字符的来历
------解决方案--------------------
跳过前面的两个字节0xFF,0xFE
有一个TXT文件,已经另存为 Unicode 编码。里面的内容是:
- C/C++ code
MFC(Microsoft Foundation Classes),是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
现在用下面的代码输出
- C/C++ code
void CMainWindow::OnRButtonDown(UINT nFlags, CPoint point) { setlocale(LC_ALL,"chs"); CFile file; file.Open(L"XXX.txt",CFile::modeReadWrite | CFile::modeCreate | CFile::modeNoTruncate); DWORD len = file.GetLength(); BYTE buffer[1000]; ::ZeroMemory(buffer,1000); while( len ) { UINT readLen = file.Read(buffer, sizeof(buffer)); len = len - readLen; } TRACE("\n\n\n"); TRACE("%s",buffer); }
但是只输出了一个不认识的字 ------ “﨧”。我记得以前有人告诉过我,需要在TXT前面加两个字符,我忘了是什么了。哪位知道。另外,那两个字符应该复制到TXT前面,还是复制到 buffer 的前面、顺便在解释一下那两个字符的来历
------解决方案--------------------
跳过前面的两个字节0xFF,0xFE