下記を実行しますと
S.LoadFromStream(MS) で止まっている模様で、エラーは出ませんが、期待する結果を返しません。
「 // 」をはずして、
MS.SaveToFile('filename.txt')を実行しますと、
テキストファイルに保存されますので、HTTP.Getはできているようです。
よろしくお願いします。
var
HTTP : TIdHTTP;
MS : TMemoryStream;
S : TStringList;
begin
HTTP :=IdHTTP1;
S := TStringList.Create; S.Clear;
MS := TMemoryStream.Create;
HTTP.Get('https://news.yahoo.co.jp/',MS);
// MS.SaveToFile('filename.txt');
S.LoadFromStream(MS);
Showessage(S.text);
Freeandnil(MS);
S.Free;
end;
環境はWindows10 Home + Delphi10.2.3 Comm.Ed. + Indy10.6.2 です。
> S.LoadFromStream(MS);
は MS.Position から読み込むから先頭から読み込みたい場合
Position 0 に戻さないと
AAAさんありがとうございます。
下記で解決しました。
var
HTTP : TIdHTTP;
MS : TMemoryStream;
S : TStringList;
begin
HTTP :=IdHTTP1;
S := TStringList.Create; S.Clear;
MS := TMemoryStream.Create;
HTTP.Get('https://news.yahoo.co.jp/',MS);
// MS.SaveToFile('filename.txt');
MS.Position := 0;
S.LoadFromStream(MS);
Showessage(S.text);
Freeandnil(MS);
S.Free;
end;
環境:Windows10 Home + Delphi10.2.3 Comm.Ed. + Indy10.6.2
ツイート | ![]() |