700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > MFC CFile输出文本文件乱码

MFC CFile输出文本文件乱码

时间:2023-08-22 00:38:53

相关推荐

MFC CFile输出文本文件乱码

转自:关于CFile试用Write写文件时出现乱码的解决办法

网上流行的答案显然没有命中问题的要害!其实,unicode字符已经被Cfile忠实地输入了文件当中!遗憾的是字处理软件(如:记事本)不知道其中是unicode字符,将他们统统当做了单字节字符处理。

要想让字处理软件识别unicode必须在文件头上加入unicode编码的前导字符:0xff, 0xfe。

于是,可以用下面的代码实现汉字的输出且用字处理软件打开不会乱码

CFile DPDA;CString FileName;CString strLine;FileName=_T("C:\\DPDA.txt");DPDA.Open(FileName,CFile::modeCreate|CFile::modeWrite);strLine="张三、李四";WORD unicode = 0xFEFF; //这句重要,注意这里是F E FF,中间有个EDPDA.Write(&unicode,2); //这句重要DPDA.Write(strLine,wcslen(strLine)*sizeof(wchar_t)); //这句重要CString strEnter;strEnter="\r\n";DPDA.Write(strEnter,4);DPDA.Write(strLine,wcslen(strLine)*sizeof(wchar_t));DPDA.Close();

亲测有效

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。