首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

有关Unicode字符串的中文?

2012-03-24 
有关Unicode字符串的中文?在线等!!LPWSTRpname......CStringstrstr.Format( %S ,pname)//pname中含有

有关Unicode字符串的中文?在线等!!
LPWSTR     pname;
......
CString   str;
str.Format( "%S ",pname);//pname中含有中文,这样写,只能得到中文前的字符,后面都获取不了,该如何全部得到?

希望得到各位的帮助!感谢!!



[解决办法]
你如果在VC6.0可能比较麻烦,可能VC6对UNICODE 支持还不够好。
以下的代码是在VS2005通过的,建立工程时,你要选择对 UNICODE支持。
注意LPWSTR是宽字符.
LPWSTR pname = _T( "abd我是中国人 ");
CString str;
str.Format(_T( "%s "),pname);
AfxMessageBox(str);

如果在VC6下,可能试以下办法

LPWSTR pname ;//= new WCHAR[1024];
pname = L "abd我是中国人 ";
//CString str;
//str.Format( "%S ",pname);
::MessageBoxW(m_hWnd,pname,L "hello ",MB_OK);
因为pname 是宽字符直接调用宽字符函数 注意MESSAGEBOX 后面加了W,

热点排行