如何让日志文件支持unicode

手册/FAQ (530) 2016-04-20 09:46:08

 

开发的程序兼容多字节字符集和unicode字符集,最近发现一个问题,在unicode字符集下输出的日志文件是乱码的。显然输出的是unicode字符,保存的却是多字节编码的文本文件。那么问题来了:日志文件如何支持unicode,fopen函数不能创建unicode编码的文本文件吗?查了一下资料,发现fopen函数还真有支持unicode选项的设置,具体就是ccs=UNICODE。使用例子是:_wfopen(L"_wfopen_test.xml",L"wt+,ccs=UNICODE")。

 

MSDN说明:

ccs=ENCODING

Specifies thecoded character set to use (UTF-8, UTF-16LE, or UNICODE) for this file. Leaveunspecified if you want ANSI encoding. This option is available in Visual C++2005 and later.

 

      目前不太确定的是这个选项是否符合posix标准,能否跨平台。

 

THE END