在VC2010,关于 fgets使用UNICODE的问题

我自己写了一个按钮的小程序,为的是一按这个按钮,就能实现复制文件中的内容到对话框中的功能。但是我运行了以后,复制是能复制,但是复制出来的全是乱码。我是一个新手,不知道应该... 我自己写了一个按钮的小程序,为的是一按这个按钮,就能实现复制文件中的内容到对话框中的功能。但是我运行了以后,复制是能复制,但是复制出来的全是乱码。我是一个新手,不知道应该如何做了,希望高人能指教一下的啊~~~~
case ID_32772://这是按钮的名字。
{
FILE *fp=fopen("d:\\ctest\\exam7.txt","r");//这是要复制的文件的路径
rewind(fp);
char str[256];
fgets(str,sizeof(str),fp);
SetDlgItemText(hwnd,IDC_EDIT1,(LPCWSTR)str);
}
运行出来是乱码,不知道应该怎么改为好,谢谢大家了~~~~~
展开
 我来答
ziyang64
2012-12-05 · TA获得超过962个赞
知道小有建树答主
回答量:529
采纳率:0%
帮助的人:810万
展开全部
你的文件内容不是UNICODE的。如果是UNICODE就需要用fgetws来读。
最简单的解决方法是:
SetDlgItemTextA(hwnd,IDC_EDIT1, str);

也可以先转成UNICODE编码:
wchar_t w[256];
MultiByteToWideChar( CP_ACP, 0, str, -1, w, 256 );
SetDlgItemTextW(hwnd,IDC_EDIT1,w);
lovechuck645
2012-12-05 · 超过21用户采纳过TA的回答
知道答主
回答量:189
采纳率:0%
帮助的人:74.2万
展开全部
是不是有由函数可以设置编码方式的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式