Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > проблемы с кодировкой


Автор: Proxin 25.4.2010, 19:30
Вчера перешёл на новую версию индей (последнюю из репозитория ихнего). И сразу же столкнулся с проблемой - весь русский текст (на странице написано, что он есть в кодировке win-1251) стал приходить знаками вопроса. Раньше такой проблемы не было. Как конвертировать эти вопросы в читабельные символы?

проблема частично решена, но вот от чего она появилась? среда разработки - delphi 7.
проблема была с таким.
Код

s:=http.get('http://vkontakte.ru/mail.php');

заменил на такое.
Код

function getpage(pg:string):string;
var sl:tstringlist;ss:tstringstream;
begin
ss:=tstringstream.create('');
http.get(pg,ss);ss.position:=0;
sl:=tstringlist.create;sl.loadfromstream(ss);result:=sl.text;
freeandnil(ss);freeandnl(sl);
end;
....
s:=getpage('http://vkontakte.ru/mail.php');

Всё работает. Но всё же интересно, из-за чего вдруг возникло?

Автор: StekloreZ 26.4.2010, 05:01
10-я версия инди работает несколько по другому с кодировкой, нежели 9-я.
У тебя всё правильно, ответ сервера должен записываться в  Stream, тогда проблем с кодировкой не должно быть.

Автор: Proxin 26.4.2010, 13:16
так предыдущий билд тоже был десятый, и всё работало. 

Автор: hawkins 27.4.2010, 10:17
а если так result:=http.get(pg);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)