QString :: fromUtf8会自动反转希伯来字符串吗?

时间:2011-06-22 15:51:39

标签: qt utf-8

我遇到的问题是反向显示希伯来字符串。我使用QTableWidget来显示一些信息,这里字符串正确显示使用:
CString hebrewStr; hebrewStr.ToUTF8();
QString s = QString::fromUtf8( hebrewStr );

在我的程序的另一部分,屏幕上显示相同的字符串,但不使用QT,这是反向显示的内容:
CString hebrewStr;
hebrewStr.ToUTF8();

我已经调试过,hebrewStr.ToUTF8()在两种情况下都会生成完全相同的unicode字符串,但字符串只能在QTableWidget中正确显示。所以我想知道Qt是否会自动反转给定的希伯来语字符串(因为它是一种从左到右的语言)。谢谢!

1 个答案:

答案 0 :(得分:1)

是的,在这种情况下,QString会从UTF-8 encoded string生成完整的unicode wchar_t。如果你想在MFC中做类似的事情,你应该使用CStringW并解码字符串。

Use MultiByteToWideChar for UTF8 to CStringW conversion.

Connected question in StackOverflow.