Доброго вечера и ночи)
Давно на мне висит проблема вывода строк из вне в QTextEdit в нормальном виде. От некоторой внешней программы получаю строки strText вида Ко... и т.д. Я так понимаю, это ASCII. При использовании функции setHtml(strText) кириллические символы отображаются нормально. Однако при использовании setText(strText) и setPlainText(strText) выводятся строки приведенного выше вида. Подскажите, как правильно перекодировать строки такого вида для нормального отображения в текстовом поле...QString::fromAscii(...)?
Большущее спасибо)
Если вы на вход получаете char* (т.е. не wchar_t*), то нужно перекодировать строчку в юникод. Для этого нужно знать кодировку исходной строки. Для windows делается примерно так:
#include <QtCore/QTextCodec>
....
char* sourceText = ....;
QTextCodec* codec = QTextCodec::codecForName("Windows-1251");
edit.setPlainText( codec->toUnicode(sourceText) );
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)