环境VC2010 编码方式:Unicode 利用fprintf写入字符串问题

[复制链接]
查看11 | 回复1 | 2013-6-14 10:26:22 | 显示全部楼层 |阅读模式
fprintf是ANSI的,UNICODE的,要用fwprintf;也可以用_ftprintf来同时兼容ANSI和UNICODE;只写入了0和1,是因为UNICODE的123456789,实际上内存上是1 \0 2 \0 3 \0 等等等,而fprintf写的是ANSI字符串遇到\0就结束了,所以就只写了一个字节而已。。。_wsetlocale(0, L"chs"); //必须加上,否则fwprintf对中文不支持FILE *f = fopen("c:\\a.txt", "a+");fwprintf(f, L"%s\n", L"这个可以写了");fwprintf(f, L"%s\n", L"1234567890");fclose(f)...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行