Запаковать архив в 1С 8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Функция фнцЗапаковатьАрхив(прмФайл, прмАрхив, прмБазоваяПапка = "", прмПароль = "", прмКомментарий = "", прмОшибка = "") Экспорт Попытка лтрАрхив = Новый ЗаписьZipФайла(прмАрхив, прмПароль, прмКомментарий, МетодСжатияZIP.Сжатие, УровеньСжатияZIP.Максимальный, ); Исключение прмОшибка = ОписаниеОшибки(); Возврат Ложь; КонецПопытки; Попытка лтрАрхив.Добавить(прмБазоваяПапка + ?(ПустаяСтрока(прмБазоваяПапка), "", "\") + прмФайл); Исключение прмОшибка = ОписаниеОшибки(); Возврат Ложь; КонецПопытки; Попытка лтрАрхив.Записать(); Исключение прмОшибка = ОписаниеОшибки(); Возврат Ложь; КонецПопытки; Возврат Истина; КонецФункции // фнцЗапаковатьАрхив() |
Распаковать архив в 1С 8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Функция фнцРаспаковатьАрхив(пПуть, прмАрхив, пСохронятьПапки = Истина, прмПароль = "", прмКомментарий = "", прмОшибка = "") Экспорт Попытка лтрАрхив = Новый ЧтениеZipФайла(прмАрхив, прмПароль); Исключение прмОшибка = ОписаниеОшибки(); Возврат Ложь; КонецПопытки; Попытка прмКомментарий = лтрАрхив.Комментарий; лтрАрхив.ИзвлечьВсе(пПуть, ?(пСохронятьПапки, РежимВосстановленияПутейФайловZIP.Восстанавливать, РежимВосстановленияПутейФайловZIP.НеВосстанавливать)); Исключение прмОшибка = ОписаниеОшибки(); Возврат Ложь; КонецПопытки; Попытка лтрАрхив.Закрыть(); Исключение прмОшибка = ОписаниеОшибки(); Возврат Ложь; КонецПопытки; Возврат Истина; КонецФункции // фнцРаспаковатьАрхив() |