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



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


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

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


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

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