Russian Qt Forum

Qt => Вопросы новичков => Тема начата: МП© от Март 20, 2012, 16:12



Название: Кодировка - Проблемы с кириллицей
Отправлено: МП© от Март 20, 2012, 16:12
Всем доброго времени суток!

Появилась такая проблемка, русский текст воспринимает нормально из констант, но при чтении данных из файла .ini, получает иероглифы.

Использую:
Код
C++ (Qt)
   QTextCodec::setCodecForCStrings(QTextCodec::codecForName("CP1251"));  
   QTextCodec::setCodecForLocale(QTextCodec::codecForName("CP1251"));    
   QTextCodec::setCodecForTr(QTextCodec::codecForName("CP1251"));
 
Пробовал UTF8, Windows1251,
Подскажите, пжл, в чем может быть проблема?

PS читаю файл через QSettings, может в нем проблема..


Название: Re: Кодировка - Проблемы с кириллицей
Отправлено: V1KT0P от Март 20, 2012, 16:21
Пробовал UTF8, Windows1251,
Подскажите, пжл, в чем может быть проблема?
Неправильно делаешь, для ini файлов надо отдельно указывать:
Код
C++ (Qt)
settings.setIniCodec("UTF-8");


Название: Re: Кодировка - Проблемы с кириллицей
Отправлено: МП© от Март 20, 2012, 16:33
Если везде указывать "UTF-8", то все равно иероглифы,
Помогло так: settings.setIniCodec("CP1251");
Спасибо!!


Название: Re: Кодировка - Проблемы с кириллицей
Отправлено: V1KT0P от Март 20, 2012, 16:38
Если везде указывать "UTF-8", то все равно иероглифы,
Помогло так: settings.setIniCodec("CP1251");
Спасибо!!
Ну если ини файл был записан с использованием кодека CP1251, то конечно при открытии UTF-8 будут иероглифы. Советую использовать везде UTF-8, меньше проблем будет.


Название: Re: Кодировка - Проблемы с кириллицей
Отправлено: kambala от Март 20, 2012, 17:26
Если везде указывать "UTF-8", то все равно иероглифы,
Помогло так: settings.setIniCodec("CP1251");
Спасибо!!
Ну если ини файл был записан с использованием кодека CP1251, то конечно при открытии UTF-8 будут иероглифы.
в этом случае иероглифы будут только если ини файл содержит кириллицу ;)