Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

несколько вариантов кода IdHTTP: что выбрать?   Найти похожие ветки 

 
Pcrepair ©   (2012-06-10 20:01) [0]

Добрый день
Одну и ту же процедуру на делфи можно написать разными способами:
Вариант1

procedure TForm1.Button1Click(Sender: TObject);
var Text : string;
begin
  Memo1.Clear;
  Text := AnsiLowerCase(UTF8ToString(IdHTTP1.Get("http://ya.ru/")));
  Memo1.Text := Text;
end;

Вариант2

procedure TForm1.Button2Click(Sender: TObject);
var  Text1 : string;
begin
  Memo1.Clear;
  Text1 := IdHTTP1.Get("http://ya.ru/");
  Text1 := UTF8ToString(Text1);
  Text1 := AnsiLowerCase(Text1);
  Memo1.Text := Text1;
end;

Некоторые еще так предлагают, Вариант3

procedure TForm1.Button3Click(Sender: TObject);
var  Text2 : string;   mStream : TStringStream;
begin
  Memo1.Clear;
  mStream := TStringStream.Create;
  IdHTTP1 := TIdHTTP.Create(nil);
  idHttp1.Get("http://ya.ru/", mStream);
  Text2 := UTF8ToString(mStream.DataString);
  Text2 := AnsiLowerCase(Text2);
  Memo1.Text := Text2;
  mStream.Free;
end;


результат (закачанный код страницы) везде одинаковый

Вопросы:
- какой вариант кода правильный по теории
- какие возможные косяки при использовании вариантов кода
- и для чего вообще нужно было mStream : TStringStream; прикручивать (хотя конечно если делать класс будет еще сложне)


 
Sha ©   (2012-06-10 20:12) [1]

вот какие проблемы бывают, если спрашивать на трех форумах,
теперь придется в трех местах выяснять, какой вариант лучше )


 
Anatoly Podgoretsky ©   (2012-06-10 20:21) [2]

> Sha  (10.06.2012 20:12:01)  [1]

Самое смешно если ответы будут везде разные


 
brother ©   (2012-06-10 20:25) [3]

1 и 2 варианты - одно и тоже, 3 вариант - подходит, если потом работать со стримом, а тебе, как я понимаю, нужен string,
значит пользуй 1 вариант и не заморачивайся...


 
Юрий Зотов ©   (2012-06-10 21:32) [4]

Причем пишется в 1 строку и без лишних переменных.


 
Сергей М. ©   (2012-06-10 22:50) [5]

Притом что +[4] ни в одном из вариантов Memo1.Clear нафих не нужен


 
Германн ©   (2012-06-11 00:55) [6]


> Sha ©   (10.06.12 20:12) [1]
>
> вот какие проблемы бывают, если спрашивать на трех форумах

На сей раз вроде только тут. Или в данном случае автор пытается использовать ДМ в качестве третейского судьи по каким-то более ранним вопросам?



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
2-1337101522
опшипка
2012-05-15 21:05
2013.03.22
опшипка


15-1337806793
TStas
2012-05-24 00:59
2013.03.22
Чайнотский вопрос про батники


2-1340908025
sas9568635
2012-06-28 22:27
2013.03.22
Пишу проект с реализацией команд КР580ВМ80А, которые в виде проце


15-1340213921
Kerk
2012-06-20 21:38
2013.03.22
30 лет спустя


2-1342471082
Vvasja
2012-07-17 00:38
2013.03.22
Не могу настроить InterBase