QString :: fromUtf8 автоматически переворачивает строку на иврите? - PullRequest
2 голосов
/ 22 июня 2011

У меня проблема с отображением строки на иврите в обратном порядке. Я использую QTableWidget для отображения некоторой информации, и здесь строка отображается правильно, используя:
CString hebrewStr; hebrewStr.ToUTF8(); <br/> QString s = QString::fromUtf8( hebrewStr );

В другой части моей программы эта же строка отображается на экране, но без использования QT, и это то, что показано в обратном порядке:
CString hebrewStr; <br/> hebrewStr.ToUTF8();

Я отладил, и hebrewStr.ToUTF8 () в обоих случаях выдает точно такую ​​же строку в Юникоде, но эта строка корректно отображается только в QTableWidget. Поэтому мне интересно, если Qt автоматически переворачивает заданную строку на иврите (так как это язык справа налево). Спасибо!

1 Ответ

1 голос
/ 22 июня 2011

Да, в этом случае QString генерирует полный код Unicode wchar_t из строки UTF-8 . Если вы хотите сделать то же самое в MFC, вы должны использовать CStringW и декодировать строку.

Используйте MultiByteToWideChar для преобразования UTF8 в CStringW.

Связанный вопрос в StackOverflow.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...