|
|
|
Запись нескольких файлов в ZIP архив. | ☑ | ||
|---|---|---|---|---|
|
0
DAVI
11.04.17
✎
13:33
|
Добрый день. Несколько экселевских файлов лежат на диске. Как их все запаковать в один ZIP архив. Делаю так
ЗаписьZIP = Новый ЗаписьZipФайла(ДатаФайла); ЗаписьZIP.Добавить(Файл); ЗаписьZIP.Записать(); и он конечно же записывает в архив только последний файл. Как делать правильно? |
|||
|
1
lodger
11.04.17
✎
16:35
|
через штатную запись в ЗаписьZIP.Добавить(Файл); надо писать маску, по которой платформа наберет все понравившиеся ей файлы. т.е. невозможно их поименно перечислить.
|
|||
|
2
ManoloMage
11.04.17
✎
16:40
|
Проще положить в одну папку, а потом пременить маску "*.*" и не т проблем. Кстати интерактивно так обычно и делается.
|
|||
|
3
НЕА123
11.04.17
✎
16:47
|
(0)
>и он конечно же записывает в архив только последний файл. он же и первый, и единственный. не? |
|||
|
4
lodger
11.04.17
✎
17:07
|
(2) ну, некоторые добрые люди работают в темпах и не создают лишних папок. тогда придется уникальный шаблон именования для файлов колхозить и по нему маску отбора делать.
(3) там имя конечного файла или маска для отбора. |
|||
|
5
ManoloMage
12.04.17
✎
10:34
|
(4) Что мешает в temp создать папку?
|
|||
|
6
DAVI
12.04.17
✎
16:44
|
(5) а можно пример пожалуйста
|
|||
|
7
kn
12.04.17
✎
18:18
|
КаталогВременныхФайлов = КаталогВременныхФайлов();
КаталогКартинок = КаталогВременныхФайлов + "\Картинки\"; КаталогНаДиске = Новый Файл(КаталогКартинок); Если Не КаталогНаДиске.Существует() Тогда СоздатьКаталог(КаталогНаДиске); КонецЕсли; //туда в КаталогКартинок пишем файлы ...... //архивируем КаталогКартинок Архиватор = Новый ЗаписьZipФайла(КаталогВременныхФайлов + "\мойфайл.zip"); Архиватор.Добавить(КаталогаКартинок, РежимСохраненияПутейZIP.СохранятьОтносительныеПути); Архиватор.Записать(); |
|||
|
8
Chieftain
12.04.17
✎
23:20
|
(0) А что мешает несколько раз вызвать "Добавить" не пересоздавая объект "ЗаписьZIP"?
|
|||
|
9
Chieftain
12.04.17
✎
23:23
|
+(8) типа
ЗаписьZIP = Новый ЗаписьZipФайла("d:\qwer.zip"); ЗаписьZIP.Добавить("d:\1.txt"); ЗаписьZIP.Добавить("d:\2.txt"); ЗаписьZIP.Добавить("d:\3.txt"); ЗаписьZIP.Записать(); |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |