汉字如何转成 \uXXXX ?
截止今 Qt 安装并试用了一个礼拜了,的确非常好用。
不过初步问题还是一大堆:
汉字如何转成 \uXXXX ?转回来倒是非常方便。
我现在就差这个功能,就可以开始把我的 Application Server 从 BC 移植到 Qt 了。
字符集的转换还不会,最奇怪的是 QString 用的是 char ,它自己不带转换为 wchar_t ?
toWCharArray 成员方法实际上直是把 char 的值放到了 wchar_t 中,并没进行转码。真是太奇怪了。
[解决办法]
QString SocketManage::stringToUnicode(QString str){ const QChar *q; QChar qtmp; QString str0, strout; int num; q=str.unicode(); int len=str.count(); for(int i=0;i<len;i++) { qtmp =(QChar)*q++; num= qtmp.unicode(); if(num<128) strout+="\\u00"; //英文或数字前加"00" else strout+="\\u"; str0=str0.setNum(num,16);//变成十六进制数 strout=strout+str0; } return strout;}