✔ Смена компрессии ZIP архива

Тема в разделе «Операционные системы и неиздательский софт», создана пользователем _MBK_, 10 июн 2018.

  1. @vovansky, @langry, я, конечно, ценю ваше желание помочь, хотя бы капитанским советом, но меня терзают смутные сомнения, что вы перед тем как ответить топик не читали вовсе...
     
  2. Чем моё готовое однокнопочное решение в точности удовлетворяющее поставленной задаче, не подошло? 'P:E'
     
  3. из переписки я понял, что вам нужно задать архиву другие параметры. но как уже сказали умные люди, чтобы задать новый алгоритм сжатия, нужно сначала вернуть сжимаемое в первозданный вид. сделать это можно либо через ram либо через rom. иных вариантов нет, увы. когда вы хотите чтобы "программа, которая умеет такое внутри себя", вы все равно используете, вернее программа использует ram и rom с которого она запускается. хотя, можно запилить виртуальный диск в памяти, но вы дали понять что виртуализацией не нитересуетесь. или можно развернуть в памяти простенькую ос с болванки и работать в ней... но что то мне подсказывает что и это слишком тривиальное для вас решение
     
    • Одобряю Одобряю x 1
  4. Я разве такое говорил? Я ж говорю - не проверял еще, так же как и ты ;)
     
  5. Тогда жду проверки и маркировки ответа новомодной галочкой. ;)
     
  6. Меня просто слегка удивляют люди, спешащие давать капитанские советы, не разобравшись в проблеме. Разумеется, для того, чтоб перепаковать архив его надо развернуть сначала, но ведь для этого вовсе необязательно создавать точную копию файловой структуры на диске не так ли?
     
  7. Совершенно верно.
     
    #48 ~RA~, 13 июн 2018 в 13:14
    Последнее редактирование: 13 июн 2018 в 13:17
  8. Судя по RTFM некоторые ограничения windows не лечатся и зашиты в API Naming Files, Paths, and Namespaces (Windows)
    Поэтому для нормального решения данной задачи только пилить свой велосипед.
     
  9. Мы о разном говорим, судя по всему… Если пути внесены в структуру архива, при распаковке они несомненно будут воспроизведены — в этом вообще и состоит смысл их упаковки.

    Далее… Любая операция с изменением существующего архива, хочешь ты того или категорически нет, происходит именно таким образом: распаковка (хотя для тебя она может быть совершенно незаметной) и переупаковка с новыми параметрами. Даже если анонсировано "на лету" и т.п.

    Если есть проблема с именованием файлов/папок — она спокойно решается другой ОС'ью в виртуалке, что уже неоднократно предложили. Решительно не понимаю твоего раздражения
     
  10. Зачем. При. Перепаковке. Полностью. Воспроизводить. Файловую. Структуру. Архива. На. Рабочей. ФС??? 'otbline''fp'
    Точно вы невнимательно тред читаете.
    Т. е. я вполне в курсе, что под линуксом можно было б и распаковать, но это решение еще более заднепроходное
     
  11. Под такие задачи нужно брать что-то с открытыми исходниками, к примеру 7-zip, модифицировать некоторые функции и пользоваться уже своим форком.
     
  12. e
    (поэтому не несомненно)
     
  13. Не обязательно должна быть распаковка и упаковка. Можно просто переносить структуру копированием, упаковывая только добавляемые файлы.
    Если поработать с архивами, то можно обратить внимание что операция удаления файла проходит намного быстрее, чем упаковка архива с нуля.
     
  14. В случае непрерывных архивов -- нет. Но ZIP так вроде не умеет.
     
  15. Про непрерывные я и не упоминал в силу ограничений формата.
    Да и они совсем неудобны в работе, для распаковки маленького файла может понадобиться полархива распаковать, а при удалении попадаешь на полную распаковку и пересжатие архива.
     
  16. а зачем переупаковывать? оставь как есть и не парься. :)
     
  17. Потому что рыба, потому что надо! '))'
     
  18. @_MBK_, ладно: нет взаимопонимания — не буду настаивать.

    @splxgf, удаление — в ряде случаев да, но, как совершенно справедливо заметил(а) Gadalka, не во всех. В случае же ТС, как я понял именно непрерывный архив, так что без вариантов
     
  19. Неа.