问题描述
- mfc 操作csv文件时,无法写入汉字
-
使用vs2013向csv文件写数据,但是无法写入汉字,英文和数字可以正常写入
求大神指导
解决方案
//设置语言为中文,否则在Unicode编码下读出中文字符为乱码
char* old_locale = _strdup(setlocale(LC_CTYPE, NULL));
setlocale(LC_CTYPE, "chs");
。。。
文件操作
。。。
setlocale(LC_CTYPE, old_locale); //还原语言区域的设置
free(old_locale);//还原区域设定
我添加了这几句就可以了
解决方案二:
你文件用unicode等编码格式,然后再用英文的逗号作为分隔符,写csv文件
解决方案三:
http://blog.163.com/lvan100@yeah/blog/static/6811721420111246262825/
解决方案四:
无法写入,应该不会吧。最多是写入的汉字是乱码!是不是?
这个问题一般是汉字的编码问题,CSV 如果采用 ANSI 编码,则需要将 Unicode 的汉字转成 ANSI 的;如果 CSV 文件采用 Unicode 编码,则一样要注册写入文件时的汉字编码格式是 Unicode.
解决方案五:
编码格式问题。。。楼上已经说得很清楚了。。
时间: 2024-08-04 11:45:43