On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение



Пост N: 710
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 21.10.25 15:44. Заголовок: Замена конкретного файла в zip


Приветствую !
Есть zip архив. В нем всякие папки с файлами. Вытаскиваю через hb_UnZipFiule конкретный файл. Изменяю его и хочу записать обратно в zip. Возможно ли такое ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 7 [только новые]


moderator




Пост N: 2522
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 21.10.25 18:08. Заголовок: fil пишет: Возможно..


fil пишет:

 цитата:
Возможно ли такое ?


Да, это возможно сделать.

Вот примерный рабочий код (архив BACKUP.ZIP был создан ранее без сохранения путей в архиве):

 цитата:
... 
if hb_zipdeletefiles('BACKUP.ZIP', {"demo2.prg"})
hb_ZipFile('BACKUP.ZIP', {"v:\demo2.prg"}, 5, NIL, .F., NIL, .F., .F., NIL, .T., NIL)
endif




Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 711
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 21.10.25 19:21. Заголовок: А если архив создан ..


А если архив создан с сохранением путей ? В данном случае это .xlsx файл. На самом деле он является zip архивом.
Достаточно переименовать xlsx в zip. Там несколько папок с файлами. И мне нужно заменить файл в конкретной папке
А как вытащить всю структуру я не знаю

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 2523
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 21.10.25 20:32. Заголовок: fil пишет: если арх..


fil пишет:

 цитата:
если архив создан с сохранением путей


Вот рабочий вариант для архива с сохранением путей:

 цитата:
 
if hb_zipdeletefiles('BACKUP.ZIP', {substr(GetStartUpFolder(), 3)+"\demo2.prg"})
//msgdebug("Before adding")
hb_ZipFile('BACKUP.ZIP', {substr(GetStartUpFolder(), 3)+"\demo2.prg"}, 5, NIL, .F., NIL, .T., .F., NIL, .T., NIL)
endif



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 712
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 21.10.25 21:06. Заголовок: Благодарю, завтра пр..


Благодарю, завтра пробну !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 8133
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.12.25 08:20. Заголовок: Использую hbziparc.l..


Использую hbziparc.lib с паролем типа: "*3EojLE2crqYhp#5g93&kVODwSz$F"
Архив создаётся нормально, но потом не могу разархивировать в winrar или Far'e, пишет неожиданный конец архива
или вот такое:


Простой пароль проходит нормально !
Как быть со сложными паролями ? Это можно как то исправить ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 8213
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.25 09:25. Заголовок: Andrey пишет: потом..


Andrey пишет:

 цитата:
потом не могу разархивировать в winrar или Far'e


а средствами hbziparc , норм ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 8214
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.12.25 19:44. Заголовок: Andrey https://i.po..


Andrey

думаю и 8 хватит

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 48
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет