crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

ViGOur
  опции профиля:
сообщение 28.1.2008, 20:14
Сообщение #1


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


В Qt используется Unicode.

Что именно тебя интересует интернационализация?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Гость_Саша_*
сообщение 28.1.2008, 20:30
Сообщение #2





Гости








    


Я вот тоже как раз с кодировками мучаюсь.
Но у меня вопрос с кодировкой для класса QHttp

Как мне корректно создать запрос HTML-странички в URL-е которой имеются русские буквы. Скажем как запросить страничку с адресом "http://aaa.ru?text=абвгде&submit=ok" ?
На самом деле "абвгде" как я понял должны быть преобразованы в %E0%E1%E2%E3%E4%E5, т.е. запрос должен быть таким:
http://aaa.ru?text=%E0%E1%E2%E3%E4%E5&submit=ok, но вот как получить эти самые %E0%E1%E2%E3%E4%E5 я не знаю. Нашёл только ф-ю QUrl::encode, но она для каждого русского символа делает двухбайтное значение, т.е. что-то типа %С3%AA
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
archimed7592
  опции профиля:
сообщение 28.1.2008, 21:22
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 127
Регистрация: 27.12.2007
Из: Moscow
Пользователь №: 56

Спасибо сказали: 0 раз(а)




Репутация:   0  


AFAICS, encode'ить в любом случае придётся...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Саша_*
сообщение 28.1.2008, 21:43
Сообщение #4





Гости








    


Цитата(archimed7592 @ 28.1.2008, 21:22) *
AFAICS, encode'ить в любом случае придётся...

Не понял...

Значит так, я, для получения правильно закодированной строки написал такую ф-ю:
CODE

QString GetUrlEncode( QString str )
{
const char *sss = str.ascii(); // просто для проверки
QString str2 = QTextCodec::codecForLocale()->fromUnicode(str);
sss = str2.ascii(); // просто для проверки
QUrl::encode( str2 );
sss = str2.ascii(); // просто для проверки
return str2;
}

И она возвращает 2-х байтовые значения русских символов. Т.е. символ 'к' преобразуется в %C3%AA
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 16.7.2025, 7:36