将TCHAR*转换为QString



如何在Qt中转换最简单的方法?

int recordSize = 1000;
TCHAR* qRecord = new TCHAR[recordSize];
//here I get data form other function
//here I try to display
qString() << QString::fromWCharArray(qRecord,recordSize);//gives many ????
printf("%s",qRecord); // this work perfectly

我尝试了wcstomb、formStdWString和其他,但似乎都不起作用。感谢您的帮助

@kajojeq不,你的第二个答案不正确。因为当编码设置为utf16(有时甚至是utf8)时,s变量只保存一个字符。正确的转换是:

QString str=QString::fromWCharArray(qrecord)

 QString s= (LPSTR)qRecord;

工作。感谢

相关内容

  • 没有找到相关文章

最新更新