G
Guest
Всем, Доброго дня!
Возникла необходимость кодировать и декодировать данные с использованием ZLib (Delphi 2010), а точнее используя функции ZCompress и ZDeCompress. Компрессия вроди как получается, но вот обратно ничего не выходит. Выдает - Data Error.
Для проверки наскоряк написал такой код:
Сдесь в файле c:\codetext.txt хрониться одна строка текста которую я компрессирую процедурой ZCompress, затем тутже получившийся результат out_buf пытаюсь декопрессировать ZDecompress(out_buf,sz,o2,sz) и записать результат в файл. В таком варианте ошибки нет, файл создается, но исходного текста так и не видно - содержит в себе полную тарабарщину.
Кто работал с ZLib подскажите пожалуйста как их правильно использовать.
Возникла необходимость кодировать и декодировать данные с использованием ZLib (Delphi 2010), а точнее используя функции ZCompress и ZDeCompress. Компрессия вроди как получается, но вот обратно ничего не выходит. Выдает - Data Error.
Для проверки наскоряк написал такой код:
Код:
var
InFile:TMemoryStream;
out_buf,o2:pointer;
str:String;
sz:integer;
buf,buf2:array [0..66] of byte;
begin
InFile:=TMemoryStream.Create;
InFile.LoadFromFile('c:\codetext.txt');
InFile.Read(buf,67);
ZCompress(@buf,InFile.Size,out_buf,sz);
InFile.Free;
InFile:=TMemoryStream.Create;
ZDecompress(out_buf,sz,o2,sz);
InFile.Write(o2,sz);
InFile.SaveToFile('c:\sss2.decmp');
end;
Сдесь в файле c:\codetext.txt хрониться одна строка текста которую я компрессирую процедурой ZCompress, затем тутже получившийся результат out_buf пытаюсь декопрессировать ZDecompress(out_buf,sz,o2,sz) и записать результат в файл. В таком варианте ошибки нет, файл создается, но исходного текста так и не видно - содержит в себе полную тарабарщину.
Кто работал с ZLib подскажите пожалуйста как их правильно использовать.