Вход | Регистрация


Запись нескольких файлов в ZIP архив.

Запись нескольких файлов в ZIP архив.
Я
   DAVI
 
11.04.17 - 13:33
Добрый день. Несколько экселевских файлов лежат на диске. Как их все запаковать в один ZIP архив. Делаю так
ЗаписьZIP = Новый ЗаписьZipФайла(ДатаФайла);
ЗаписьZIP.Добавить(Файл);
ЗаписьZIP.Записать();
и он конечно же записывает в архив только последний файл.
Как делать правильно?
 
 
   lodger
 
1 - 11.04.17 - 16:35
через штатную запись в ЗаписьZIP.Добавить(Файл); надо писать маску, по которой платформа наберет все понравившиеся ей файлы. т.е. невозможно их поименно перечислить.
   ManoloMage
 
2 - 11.04.17 - 16:40
Проще положить в одну папку, а потом пременить маску "*.*" и не т проблем. Кстати интерактивно так обычно и делается.
   НЕА123
 
3 - 11.04.17 - 16:47
(0)
>и он конечно же записывает в архив только последний файл.

он же и первый, и единственный. не?
   lodger
 
4 - 11.04.17 - 17:07
(2) ну, некоторые добрые люди работают в темпах и не создают лишних папок. тогда придется уникальный шаблон именования для файлов колхозить и по нему маску отбора делать.
(3) там имя конечного файла или маска для отбора.
   ManoloMage
 
5 - 12.04.17 - 10:34
(4) Что мешает в temp создать папку?
   DAVI
 
6 - 12.04.17 - 16:44
(5) а можно пример пожалуйста
   kn
 
7 - 12.04.17 - 18:18
КаталогВременныхФайлов = КаталогВременныхФайлов(); 
КаталогКартинок = КаталогВременныхФайлов + "\Картинки\";
      
КаталогНаДиске = Новый Файл(КаталогКартинок);
Если Не КаталогНаДиске.Существует() Тогда
   СоздатьКаталог(КаталогНаДиске);
КонецЕсли;

//туда в КаталогКартинок пишем файлы


......

//архивируем КаталогКартинок

Архиватор = Новый ЗаписьZipФайла(КаталогВременныхФайлов + "\мойфайл.zip");
Архиватор.Добавить(КаталогаКартинок, РежимСохраненияПутейZIP.СохранятьОтносительныеПути);
Архиватор.Записать();
   Chieftain
 
8 - 12.04.17 - 23:20
(0) А что мешает несколько раз вызвать "Добавить" не пересоздавая объект "ЗаписьZIP"?
   Chieftain
 
9 - 12.04.17 - 23:23
+(8) типа
    ЗаписьZIP = Новый ЗаписьZipФайла("d:\qwer.zip");
    ЗаписьZIP.Добавить("d:\1.txt");
    ЗаписьZIP.Добавить("d:\2.txt");
    ЗаписьZIP.Добавить("d:\3.txt");
    ЗаписьZIP.Записать();

Список тем форума
Рекламное место пустует  Рекламное место пустует
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует