我在Mac上开发了一个macos应用程序,有些信息需要写入到log.txt文件中,并且该信息包含中英文字符串,因此我使用fopen方法创建了log.txt: / p>
FILE * m_pFile = fopen(filename, "a+, ccs=UTF-8");
但是当打开log.txt时,它显示了中文字符串中的混乱代码:
原始中文字符串为“当前启动次数是------”,
,log.txt中的字符串为'ΩΩÂaççêêØÂä®Ê¨°Êï∞ÊòØ---'
我该怎么办,如果想在log.txt文件中正确打印中英文字符串,非常感谢!
答案 0 :(得分:1)
可能的重复项:C++ writing UTF-8 on Linux
报价:
在Windows上完成的扩展在Linux,OS-X,Android, iOS和其他地方。微软只是将这些扩展 实现您编写与其他平台不兼容的代码。
将宽字符串转换为包含UTF-8的字节字符串,然后 像往常一样将字节写入文件。