Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Кодирование кириллицы для использования в URL


leonidus ©   (2008-10-28 19:26:00) 

Нужно передать скрипту Google Translate русскую строчку для перевода, перерыл в инете кучу примеров кода но везде одна и таже засада. Берем например слово "привет", гугл его превращает в "%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82", хотя любая найденная мной процедура URL encoded превращает в "%EF%F0%E8%E2%E5%F2" т.е. строчку в два раза короче гугловской, что не такто?


leonidus   (2008-10-28 20:12:00) [1]

да у гугла UTF8.

sniknik т.е. я так понимаю нужно сначала win1251 в utf-8 переконвертить а потом прогнать полученную строчку через URLEncode ? Но тогда вопрос, а как произвести конвертирование win1251 в utf-8 ? И потом, в справке Indy описание функции URLEncode такое:
function URLEncode(const psSrc: string): string;

т.е. на вход ей подается не юникодная строка проде wedestring, а обычный string, будет ли тогда он нее толк если я ей передам строку формата UTF ?


sniknik   (2008-10-28 20:01:00) [2]

> Сейчас нашел процедуру из набора Indy:
и исходная строка в win1251, а гугль небось с utf-8 конвертирует.  
смени исходную кодировку.


leonidus   (2008-10-28 19:44:00) [3]

Сейчас нашел процедуру из набора Indy:

st:='привет';
st := URLEncode(st);

на выходе таже короткая строка...


Наверх

Титульная страница Поиск, карта сайта Написать письмо