Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ Вопрос по кодировкам

Автор: SemenSemenych 29.4.2012, 19:49

Доброго времени суток. Внимательно читал гугль, внимательно читал ассистант, но видимо сам не понимаю как кратко задатьь свой вопрос по проблеме. Подскажите в какую сторону ковыряться. Проблема следующая.
Linux + QtCreator; Исходники сохранены в UTF-8. Изначально установлены кодеки (для верности вот прям все возможные) --

QTextCodec::setCodecForCStrings, QTextCodec::setCodecForLocale, QTextCodec::setCodecForTr в 
QTextCodec::codecForName("UTF-8");


На форме QWidget русские буквы отображаются замечательно. Проблема начинается когда я в QLineEdit ввожу русские буквы. В слоте QLineEdit.textChanged(QString &arg1);
вот в этом самом arg1 русские буквы оказываются в виде "\2027\2032" и т.д. Естественно потом при добавлении этого аргумента в запрос -- ничего не работает... Полный мрак и засада :( Куда копать-то, что ещё крутить?

Автор: math64 5.5.2012, 11:02

Цитата(SemenSemenych @ 29.4.2012, 19:49) *
вот в этом самом arg1 русские буквы оказываются в виде "\2027\2032" и т.д.

А так и должно быть
Это коды букв ЗК в восьмиричном коде - так они отображаются при выводе в qDebug(), а так это нормальные русские буквы.
Если нужно перекодировать в другую кодировку - используй соответствующие кодеки.

Автор: Гость 5.5.2012, 11:56

setCodecForLocale - лишний, читай ассистант

Автор: SemenSemenych 5.5.2012, 19:55

Про Locale знаю. Это уже от безысходности. То есть нормальные русские буквы мне никак там не увидеть, получается?

Автор: Гость 5.5.2012, 20:17

Убери setCodecForLocale. Что значит не увидеть? Увидеть где ? В консоли? В отладчике? В коредампе оО? Опять же какой линукс, про все не знаю а вот например в МСВС у консоли кодировка KOI8-R а в Ubunte UTF-8 (по умолчанию), хотя если codecForLocale не задан это не должно иметь никакой роли и всё должно корректно выводится на системе, в которой локаль поддерживает русские символы или юникод.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)