在上一篇中记录了用fprintf函数写内容到文件中的方法,但是发现了问题:产生的文件字符串有乱码现象。
解决办法:用_ftprintf函数
另外,据说:
unicode的话要用fwprintf
unicode 和 ANSI两个版本都可用的有宏_ftprintf
但是如下代码中出来的是“???”:
CString str = "紫清婷";
_ftprintf(fp, _T("%s\n"), str);
试了半天,发现字母和数字都正确写入文件,但是汉字写到文件就要变成"?"。
最后改为:
_ftprintf(fp, _T("%hs\n"), CT2CA(str));
Bingo!!!