|
Вопрос # 3 471/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
Есть такой исходный текст
var
URL, error: string;
s:TstringList;
HTTP: TIdHTTP;
begin
HTTP:=TIdHTTP.Create(nil);
HTTP.HandleRedirects:=True;
URL:='http://pda.gismeteo.ru/';
S:=TStringList.Create; //Создаём TStringList
try
begin
S.Text:=HTTP.Get(URL); //Записываем в него то, что загрузили
s.text:=Utf8ToAnsi(s.text);
Memo1.Text:=s.text;
end
except
on E: Exception do
begin
error:=E.Message;
end;
end;
s.Free;
HTTP.Free;
end;
стоит windows 7 и Delphi 2007
все работает ок
поставил 2010
и что на выходе в мемо
вместо руских аброкадабры
убираю строку s.text:=Utf8ToAnsi(s.text);
и все ок
но теперь те страници которые html code windows 1251 аброкадабры и как их перевести в читаемый вид в delphi 2010
помогите, спасибо
 |
Вопрос задал: Alexey (статус: Посетитель)
Вопрос отправлен: 2 декабря 2009, 12:29
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 6; последнее сообщение — 2 декабря 2009, 16:44; участников в обсуждении: 2.
|
Вадим К (статус: Академик), 2 декабря 2009, 12:55 [#1]:
по логике вещей - поспользоваться функцией AnsiToUTF8
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Alexey (статус: Посетитель), 2 декабря 2009, 15:37 [#2]:
по логике так, но на практике, те же абракадабры
|
|
Вадим К (статус: Академик), 2 декабря 2009, 15:41 [#3]:
Хотя логично. потому что там происходит несколько лишних преобразований.
зачем писать так
S.Text:=HTTP.Get(URL);
если можно завести переменную типа string и писать напрямую туда...
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Alexey (статус: Посетитель), 2 декабря 2009, 15:57 [#4]:
каким образом и в чем разница
|
|
Вадим К (статус: Академик), 2 декабря 2009, 16:04 [#5]:
а что , думаем, что при присваивании s.text :='что то'
ничего не происходит? ой-ой.
Наиболее правильно в данном случае скачать в буфер (TMemoryStream к примеру) и потом, проанализировав его, преобразовать к нужному формату.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Alexey (статус: Посетитель), 2 декабря 2009, 16:44 [#6]:
ой-ой понятно, помогите как это на практике сделать, если можно
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|