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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Кодировка и QNetworkAccessManager  (Прочитано 1651 раз)
rudireg
Гость
« : Июнь 03, 2013, 16:09 »

Привет.
Использую QNetworkAccessManager для осуществления запроса.
Сайт к которому идет запрос имеет кодировку
Код:
<META http-equiv="Content-Type" content="text-html; charset=windows-1251">
При получении данных, вместо русских символов имею в буфере ответа квадратики
чтото типа

�����������������

Сама программа имеет настройку
#include <QTextCodec>
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf8"));

Подскажите как получить данные в формате UTF-8 если сайт отдает их в Windows 1251
Записан
Kurles
Бывалый
*****
Offline Offline

Сообщений: 480



Просмотр профиля
« Ответ #1 : Июнь 03, 2013, 17:49 »

Код
C++ (Qt)
   QTextCodec *win1251codec = QTextCodec::codecForName("Windows-1251"); // кодек для конвертации
 
   QByteArray networkReply = ....; // Получаем ответ от сайта любым способом
 
   QString utf8Text = win1251codec->toUnicode(networkReply); // перекодируем его в utf-8
Записан

Код
C++ (Qt)
while(!asleep()) sheep++;
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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