qDebug()<<QString::fromUtf8(strr.c_str());无法输出正确文本c++...
发布网友
发布时间:2024-10-01 16:47
我来回答
共1个回答
热心网友
时间:2024-11-13 19:01
把strr.c_str()和"\u65e0\u6301"当成字符数组,将每一个元素的整型值打印出来对比一下,看是不是有区别:
char str1[20]=strr.c_str();
char str2[20]="\u65e0\u6301";
int i;
for( i=0; i<20; i++)
{
printf("%d,",str1[i]);
}
printf("\n");
for( i=0; i<20; i++)
{
printf("%d,",str2[i]);
}
另外,注意一下strr.c_str()是否有字符串结束符,utf8的汉字字符串末尾应该要有两到三个0作为结束符。