DotNetZip — создать zip из доступного файла

Можно ли использовать DotNetZip для создания zip-файла из доступного файла (например, файла журнала из другого приложения)?

поэтому создайте zip, когда файл журнала записывается через другое приложение


person gert    schedule 27.05.2011    source источник


Ответы (1)


Хм, ну да, если вы готовы написать код.

Один из способов сделать это — сжать файл ПОСЛЕ того, как он был записан и закрыт. Вам потребуется приложение, работающее с наблюдателем за файловой системой, и когда он видит, что файл журнала закрывается, он сжимает этот файл журнала в zip.

Если вы имеете в виду отдельное приложение, которое записывает в файл и автоматически записывает в zip-файл, нет, я не знаю простого способа сделать это. Есть одна возможность: если стороннее приложение принимает System.IO.Stream для записи записей журнала. В этом случае вы можете сделать это с помощью DotNetZip. Вы можете получить доступный для записи поток из DotNetZip, в который приложение записывает контент. Он сжимается по мере записи, и когда запись завершена, DotNetZip закрывает zip-файл. Чтобы использовать это, проверьте метод ZipFile.AddEntry(), который принимает WriteDelegate. Это в документации.

person Cheeso    schedule 10.06.2011