如题,从编辑框中提取汉字,取出为CString类型的,将此变量转换为wchar____t类型的变量,显示出来为乱码,但是当输入的为英文字母时,显示的就是正确的,不知道问题出现在哪里,求大神指点
!
部分程序:
最简单的将你的工程设置为Unicode编码的。
_tsetlocale(LC_ALL, _T("chs")); //加上这句,没加的话可能乱码
USES_CONVERSION;
WCHAR wStr[] = L"王小二";
wprintf(L"UNICODE Str = %s\n", wStr);
printf("W2A Convert = %s\n", W2A(wStr));
_tprintf(_T("W2T Convert = %s\n"), W2T(wStr));
CHAR aStr[] = "李大麻";
printf("MBCS Str = %s\n", aStr);
wprintf(L"A2W Convert = %s\n", A2W(aStr));
_tprintf(_T("A2T Convert = %s\n"), A2T(aStr));
_tsystem(_T("PAUSE"));
nText是字符,设置成数组或指针都可,指针的话先分配内存
问题大致解决了,设置成Unicode编码的可以,但是如果这样设置,我的程序太大需要改好多东西,因为用的是vc6.0,也不能兼容,将这部分程序转到vc2008中就好使了
问题大致解决了,设置成Unicode编码的可以,但是如果这样设置,我的程序太大需要改好多东西,因为用的是vc6.0,也不能兼容,将这部分程序转到vc2008中就好使了