Russian Qt Forum

Qt => Вопросы новичков => Тема начата: GamBitiK от Апрель 20, 2014, 12:58



Название: Проблема кодировки из Windows1251 в UTF-8 при взятие файла из интернета
Отправлено: GamBitiK от Апрель 20, 2014, 12:58
Ребят помогите,достаю из интернета документ,загоняю его в Qstring , страница была не в UTF 8 а в win1251 и выдает мне такие вещи:

QString fan =(QString)Reply->readAll();

QTextCodec *codec = QTextCodec::codecForName("UTF-8");
QByteArray en = codec->fromUnicode(fan);


в переменной Qstring
"<?xml version="1.0" encoding="windows-1251"?><rss version="2.0" xmlns="http://backend.userland.com/rss2" xmlns:yandex="http://news.yandex.ru">\n<channel>\n<image>\n<url>http://www.adygtv.ru/logo.jpg</url>\n<title>���� "������"</title>\n<link>http://www.adygtv.ru/</link>\n</image>\n<title>������� </title>\n<link>http://www.adygtv.ru</link>\n<description></description>\n<lastBuildDate>Sun, 20 Apr 2014 13:45:58 +0400</lastBuildDate>\n<ttl>60</ttl>\n<item>\n\t<title>� ������ �������� ��������� ������ ���������..."

QByteArray
"<?xml version="1.0" encoding="windows-1251"?><rss version="2.0" xmlns="http://backend.userland.com/rss2" xmlns:yandex="http://news.yandex.ru">\n<channel>\n<image>\n<url>http://www.adygtv.ru/logo.jpg</url>\n<title>���� "������"</title>\n<link>http://www.adygtv.ru/</link>\n</image>\n<title>������� </title>\n<link>http://www.adygtv.ru</link>\n<description></description>\n<lastBuildDate>Sun, 20 Apr 2014 13:45:58 +0400</lastBuildDate>\n<ttl>60</ttl>\n<item>\n\t<title>� ��..."

мне нужен понятный title


Название: Re: Проблема кодировки из Windows1251 в UTF-8 при взятие файла из интернета
Отправлено: Old от Апрель 20, 2014, 13:01
Код
C++ (Qt)
QByteArray fan = Reply->readAll();
 
QTextCodec *codec = QTextCodec::codecForName( "Windows-1251" );
QString txt = codec->toUnicode(fan);
 


Название: Re: Проблема кодировки из Windows1251 в UTF-8 при взятие файла из интернета
Отправлено: GamBitiK от Апрель 20, 2014, 13:13
Код
C++ (Qt)
QByteArray fan = Reply->readAll();
 
QTextCodec *codec = QTextCodec::codecForName( "Windows-1251" );
QString txt = codec->toUnicode(fan);
 

Спасибо большое,получилось, а не подскажешь нету ли в Qt функции для чистки текста от html тегов?