Главная страница
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.087 c
15-1347959351
DevilDevil
2012-09-18 13:09
2013.03.22
Методы компиляции и оптимизации машинных команд


2-1339837887
Разведка
2012-06-16 13:11
2013.03.22
Как происходит уничтожение в структуре класса


15-1334583721
Андреевич
2012-04-16 17:42
2013.03.22
Узнать когда был выход из ждущего режима


4-1258360883
ABolnykh
2009-11-16 11:41
2013.03.22
Как задать координаты точки минимизации окна?


15-1348691402
Юрий
2012-09-27 00:30
2013.03.22
С днем рождения ! 27 сентября 2012 четверг