Delphi/C++Builder IdHttp で UTF-8 のページを string へ Get

Delphi 2009以降(UTF8系)で UTF8 の Webから string へ Getする

S := IdHttp.Get(AURL) だと、デフォルトコードで処理してしまうため
Stream などで取得後、IdGlobal の ReadStringFromStream 関数を用いて string へ変換を行う
uses IdGlobal; // を追加
// :
MemStream := TMemoryStream.Create;
try
    IdHTTP.Get(AURL, MemStream);
    MemStream.Position := 0;
    S := ReadStringFromStream(MemStream, MemStream.Size, TEncoding.UTF8);
    // S := ReadStringFromStream(MemStream, MemStream.Size, IndyTextEncoding_UTF8); // XEのどこからか 
finally
    MemStream.Free;
end;

コメント

Unknown さんの投稿…
文字化けして困っていました。
助かりました。
ありがとうございました。