Russian Qt Forum
Апрель 20, 2024, 14:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qxmlstreamreader русское значение параметра в теге  (Прочитано 3045 раз)
___Cepera___
Гость
« : Февраль 11, 2016, 17:40 »

С помощью qxmstreamreaderattributes получаю значение параметра
Так вот значие в xml файле на русском. id="Привет"
Кодировка файла utf-8

В начале файла строку <?xml version="1.0" encoding="utf-8"?> прописал
Когда получаю, значение получаю иероглифы. Настраивал кодировку в qt, все равно не помогло. Подскажите что можно сделать и можно ли вообще.
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Февраль 11, 2016, 20:21 »

Сам файл кодирован в utf-8?
Записан

___Cepera___
Гость
« Ответ #2 : Февраль 11, 2016, 22:08 »

Да, в qt еще дописал
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8");
Возможно, что из за того что ос QNX. Завтра попробую на win7.
А по сути же должно работать?
« Последнее редактирование: Февраль 11, 2016, 22:19 от ___Cepera___ » Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #3 : Февраль 11, 2016, 22:44 »

Можете приложить xml файл и код получения значения?
Записан

___Cepera___
Гость
« Ответ #4 : Февраль 13, 2016, 17:11 »

Забыл отписать, решил проблему вот так
Код:
    QTextCodec * codec = QTextCodec::codecForName("UTF-8");
    QTextCodec :: setCodecForLocale(codec);
    QTextCodec :: setCodecForCStrings(codec);
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.