Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ZLib, распаковка нескольких файлов [D7]


Байрам ©   (2006-07-06 12:18:00) 

Есть желание работать с новым форматом 2007го MSOffice,
как известно его файлы, допустим .docx, представляют собой zip архив, в котором хранятся xml файлы,
я хочу, используя delphi'ий ZLib, распаковать этот архив,
но никак не могу найти в инете рабочий пример.
Этот не канает:
procedure DecompressFiles(const Filename, DestDirectory : String);
var
 dest, s : String;
 decompr : TDecompressionStream;
 infile, outfile : TFilestream;
 i, l, c : Integer;
begin
// IncludeTrailingPathDelimiter (D6/D7 only)
 dest := IncludeTrailingPathDelimiter(DestDirectory);
 infile := TFileStream.Create(Filename, fmOpenRead);
 try
   { number of files }
   infile.Read(c, SizeOf(c));
   for i := 1 to c do
   begin
     { read filename }
     infile.Read(l, SizeOf(l));
     SetLength(s, l);
     infile.Read(s[1], l);
     { read filesize }
     infile.Read(l, SizeOf(l));
     { decompress the files and store it }
     s := dest + s; //include the path
     outfile := TFileStream.Create(s, fmCreate);
     decompr := TDecompressionStream.Create(infile);
     try
       outfile.CopyFrom(decompr, l);
     finally
       outfile.Free;
       decompr.Free;
     end;
   end;
 finally
   infile.Free;
 end;
end;


s := dest + s -> здесь в не передается имя файла

Заранее спасибо.


Ketmar   (2006-07-06 15:18:00) [1]

вам нужно знать, что zlib реализует стандарт rfc на сжатие. и что этот стандарт возможно реализовать и другими путями.


Байрам   (2006-07-06 14:17:00) [2]

Мне нужна распаковка именно ZLib,
эта библиотека не использует ее
http://www.torry.ru/vcl/compress/std/zunz.zip

а фтп у меня так и не открылась


Dmitrij_K   (2006-07-06 12:26:00) [3]

ftp://ftp.info-zip.org/pub/infozip/+ http://www.torry.ru/vcl/compress/std/zunz.zip


Наверх

Титульная страница Поиск, карта сайта Написать письмо