Книга: Технологии интеграции "1С:Предприятия 8.3""
Назад: Особенности упаковки файлов по маске
Дальше: Чтение ZIP-архивов

Особенности работы метода «Добавить()»

Упаковать файлы в архив можно несколькими способами в зависимости от того, какой результат необходим.

Упаковать некоторые файлы в папку ZIP с сохранением структуры каталогов.

Предположим, что у нас есть следующие файлы:

с:\ZIP\file1.xls

с:\ZIP\Test\file3.xls

Добавить их в архив можно, вызывая для каждого метод Добавить() с указанием требуемых параметров (листинг 6.126).

Листинг 6.126. Пример добавления файлов в ZIP-архив

Архив.Добавить("c:\ZIP\file1.xls", РежимСохраненияПутейZIP.СохранятьПолныеПути);

Архив.Добавить("c:\ZIP\Test\file3.xls", РежимСохраненияПутейZIP.СохранятьПолныеПути );

В архив файлы попадут следующим образом:

\ZIP\file1.xls

\ZIP\Test\file3.xls

Упаковать все файлы в папку ZIP без сохранения структуры каталогов.

Предположим, что у нас есть следующие файлы:

с:\ZIP\file1.xls

с:\ZIP\Test\file3.xls

Для добавления всех файлов передадим в метод Добавить() маску для поиска всех файлов (*.*), укажем, что нет необходимости сохранять пути для файлов и что требуется производить поиск в подпапках (листинг 6.127).

Листинг 6.127. Пример добавления файлов в ZIP-архив

Архив.Добавить("c:\ZIP\*.*", РежимСохраненияПутейZIP.НеСохранятьПути, РежимОбработкиПодкаталоговZIP.ОбрабатыватьРекурсивно);

В архив файлы попадут следующим образом:

\file1.xls

\file3.xls

При этом следует помнить, что если в разных папках будут файлы с одинаковыми именами, то операция выполнена не будет – из-за того что фактически мы попытаемся добавить в архив файлы с одинаковыми именами.

Упаковать все файлы в папку ZIP с сохранением относительных путей.

Предположим, что у нас есть следующие файлы:

с:\ZIP\file1.xls

с:\ZIP\Test\file3.xls

Для добавления всех файлов передадим в метод Добавить() маску для поиска всех файлов (*.*), укажем, что необходимо сохранять относительные пути для файлов и что требуется производить поиск в подпапках. При этом следует помнить, что относительные пути будут начинаться от папки, в которой начался поиск (листинг 6.128).

Листинг 6.128. Пример добавления файлов в ZIP-архив

Архив.Добавить("c:\ZIP\*.*", РежимСохраненияПутейZIP.СохранятьОтносительныеПути,

РежимОбработкиПодкаталоговZIP.ОбрабатыватьРекурсивно);

В архив файлы попадут следующим образом:

\file1.xls

\Test\file3.xls

Назад: Особенности упаковки файлов по маске
Дальше: Чтение ZIP-архивов