Ситуация такая, гружу страницу в поток через IdHTTP
Код:
IdHTTP.Request.AcceptEncoding:='gzip, deflate';
inStream:=TMemoryStream.Create;
try
IdHttp.Get(url,inStream);
outStream:=TMemoryStream.Create;
try
gZipDecompress(inStream,outStream);
outStream.Position:=0;
finally outStream.Free; end;
finally inStream.Free; end;
А вот как мне вытянуть из OutStream в String для дальнейшей обработки ума не приложу.
Код:
Doc:=coHTMLDocument.Create as IHTMLDocument2; //создали экземпляр документа
V:=VarArrayCreate([0,0], varVariant);
V[0]:=Cache;
Doc.Write(PSafeArray(TVarData(v).VArray));
Кто знает, подскажите.
Я пробовал через SetString(Cache, PChar(OutStream.Memory), еще через одну функцию, но результат на выходе одинаковый - квадратики вместо текста. Чего я не правильно делаю? Причем в memo1.lines.loadfromstream() - все нормально.