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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt5 проблема с кодировкой  (Прочитано 3569 раз)
Archan_gel
Гость
« : Декабрь 12, 2014, 07:13 »

Добрый день,

Проблема с кодировкой при чтении данных из XML под Windows 7.
Читаю данные из XML кодировка utf-8 в отладчике в переменой кодировка нормальная, если ее вывести при помощи qWarning() то получаю "Ñàäîâàÿ" такой же резултат если ее сохранить в БД.

Если же вывести через QMessageBox::warning(, _text); то кодировка нормальная.
« Последнее редактирование: Декабрь 12, 2014, 07:20 от Archan_gel » Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #1 : Декабрь 12, 2014, 10:03 »

Попробуйте QString::fromUtf8
Записан
Archan_gel
Гость
« Ответ #2 : Декабрь 12, 2014, 10:21 »

он уже QString
Код:
bool startElement(const QString &, const QString &, const QString &qName, const QXmlAttributes &attributes)

QString _text = attributes.value("OFFNAME");

Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #3 : Декабрь 12, 2014, 12:41 »

QString хранит данные в UTF-16 внутри, поэтому конвертируй перед выводом/сохранением
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Archan_gel
Гость
« Ответ #4 : Декабрь 13, 2014, 18:12 »

С кодировкой сохранеия в БД разобрался. Кодировка в базе стояля SQL_ANSI, сменил кодировку на utf-8 и все стало Ок.
Но вот почему в qWarning() краказябры не пойму.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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