[решено] просмотр файла в архиве без распаковки архива

Ответить
 • Просмотры: 1
Аватара пользователя
jah

[решено] просмотр файла в архиве без распаковки архива

Сообщение jah »

Здравствуйте!



На большом архиве 7z заметил, что для просмотра файла в нём (winrar, 7zip), начинается распаковка других файлов в этом архиве (пока не знаю всех тонкостей процесса распаковки, но похоже, что распаковываются не все файлы архива).

Это достаточно неудобно, так как для просмотра одного маленького файла в большом архиве приходится долго ждать (можно, конечно, вынести файл из архива, а потом открыть, но интересует именно открытие файла из самого архива).

Есть ли способ сделать так, чтобы при просмотра файла в архиве, распаковки других файлов не происходило, то есть распаковывался только один этот файл?



Спасибо!
Аватара пользователя
Iska

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение Iska »

Цитата jah:



На большом архиве 7z заметил, что для просмотра файла в нём (winrar, 7zip), начинается распаковка других файлов в этом архиве



Это особенность
непрерывных архивов
(solid archive).




Цитата jah:



сделать так, чтобы при просмотра файла в архиве, распаковки других файлов не происходило



Перепаковать, не используя опцию "непрерывный архив".
Аватара пользователя
mwz

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение mwz »

Цитата Petya V4sechkin:



Перепаковать, не используя опцию "непрерывный архив".
[решено] просмотр файла в архиве без распаковки архива




jah, Угу. Но не забывая, что размер архива при этом увеличится.
Аватара пользователя
Petya V4sechkin

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение Petya V4sechkin »

Цитата jah:



На большом архиве 7z заметил, что для просмотра файла в нём (winrar, 7zip), начинается распаковка других файлов в этом архиве



Это особенность
непрерывных архивов
(solid archive).




Цитата jah:



сделать так, чтобы при просмотра файла в архиве, распаковки других файлов не происходило



Перепаковать, не используя опцию "непрерывный архив".
Аватара пользователя
SergAS70

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение SergAS70 »

jah, чем смотрите? В тотал командоре не пробЫвали?
Аватара пользователя
SergAS70

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение SergAS70 »

Цитата Petya V4sechkin:



Это особенность непрерывных архивов (solid archive).
[решено] просмотр файла в архиве без распаковки архива





Цитата Petya V4sechkin:



Перепаковать, не используя опцию "непрерывный архив".
[решено] просмотр файла в архиве без распаковки архива




спасибо, почти всё встало на свои места



почти, так как остался такой момент: как бы точно сориентироваться какой из форматов архива - непрерывный?



так скажем, "сочной" информации не встретилось



из того, что встретилось

http://www.7-zip.org/7z.html



Цитата:



The main features of 7z format:



Open architecture

High compression ratio

Strong AES-256 encryption

Ability of using any compression, conversion or encryption method

Supporting files with sizes up to 16000000000 GB

Unicode file names

Solid compressing

Archive headers compressing



причём, в русскоязычной версии сайта, такой вывод сделать неочевидно

http://7-zip.org.ua/ru/7z.html



Цитата:



Основные преимущества формата 7z:



Открытая архитектура

Высокий коэффициент сжатия

Шифрование AES-256

Возможность выбора любого метода сжатия, конверсии и шифрования

Поддержка файлов с размером до 16000000000 GB

Поддержка файлов с именами в формате юникод

Сильная компрессия

Сжатие заголовков архива



хотя алгоритмы непрерывного архивирования обеспечивают большую степень сжатия, где та грань степени сжатия, которая отличит сильнее сжатый архив на предмет его непрерывности





возможно не точно:

zip, как я понял не непрерывный

rar может быть как непрерывным, так и не непрерывным (сориентировался по тому, что в winrar можно ставить/не ставить галочку Create solid archive (Создать непрерывный архив))



в целом, на данный момент, я так понимаю, нужно досконально изучить метод сжатия, после чего возможно удастся сделать вывод о том, непрерывный архив получится в итоге или нет
Аватара пользователя
Iska

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение Iska »

Цитата jah:



в целом, на данный момент, я так понимаю, нужно досконально изучить метод сжатия, после чего возможно удастся сделать вывод о том, непрерывный архив получится в итоге или нет
[решено] просмотр файла в архиве без распаковки архива




Непрерывный архив не имеет отношения к методам сжатия. Это независимая опция.

Он получается когда все упаковываемые файлы рассматриваются не раздельно, а как непрерывная цепочка байт, т.е. при упаковке последующих файлов активно используется уже упакованная информация. И, в общих чертах, если в обычном архиве для упаковки двух одинаковых файлов потребуется двойное место, то при упаковке их в solid-архив второй файл упаковываться не будет, а в архив будет вставлена ссылка типа "То же самое, что с байта такого-то по байт такой-то в уже имеющейся части".



Соответственно если архив попорчен, то из непрерывного архива можно извлечь информацию только до места сбоя, в то время как в обычном архиве можно было бы извлечь абсолютно всё кроме того файла, на который пришёлся сбой.
Аватара пользователя
mwz

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение mwz »

Цитата mwz:



Непрерывный архив не имеет отношения к методам сжатия. Это независимая опция.

Он получается когда все упаковываемые файлы рассматриваются не раздельно, а как непрерывная цепочка байт, т.е. при упаковке последующих файлов активно используется уже упакованная информация. И, в общих чертах, если в обычном архиве для упаковки двух одинаковых файлов потребуется двойное место, то при упаковке их в solid-архив второй файл упаковываться не будет, а в архив будет вставлена ссылка типа "То же самое, что с байта такого-то по байт такой-то в уже имеющейся части".

Соответственно если архив попорчен, то из непрерывного архива можно извлечь информацию только до места сбоя, в то время как в обычном архиве можно было бы извлечь абсолютно всё кроме того файла, на который пришёлся сбой.
[решено] просмотр файла в архиве без распаковки архива




спасибо за пояснение, действительно, я не так себе это представлял до этого



Если, исходя из вышеизложенного, я теперь правильно сделал вывод, то

- для не непрерывных архивов применяется алгоритм сжатия для каждого файла, после чего эти сжатые файлы объединяются в архив

- для непрерывных архивов все файлы выстраиваются в последовательность байт, к которой уже применяется алгоритм сжатия



Также сделал вывод, что непрерывность архива определяется исключительно ПО, которое делает архивацию, то есть потенциально любой алгоритм сжатия можно использовать как для получения непрерывных, так и не непрерывных архивов,

и существующее ПО типа winrar и 7zip определяет как это делать на своё усмотрение:

например,

winrar архивы rar и rar5 позволяет сделать как непрерывными, так и не непрерывными, zip - только не непрерывными

7zip не совсем понятно как делает, но похоже, что zip делает не непрерывным, 7z - непрерывным
Аватара пользователя
jah

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение jah »

Цитата jah:



то есть потенциально любой алгоритм сжатия можно использовать как для получения непрерывных … архивов,
[решено] просмотр файла в архиве без распаковки архива




Теоретически — да. Практически всё упирается в основное приложение, породившее тот или иной формат: WinZip (а ранее PKZIP) для zip-архивов, WinRAR/RAR — для rar-архивов. Здесь всё очень тонко упирается в формат данных и особенно в лицензирование. Собственно, формат zip и был порождён грызнёй между SEA и PKZIP вокруг формата PKARC и «трошки позаимствованным» (а на самом деле — полностью «слямзенным» и слегка оптимизированным) кодом из PKARC для своего архиватора. Потому на данный момент можно ли делать в том или ином формате solid-архивы определяется самим используемым форматом.




Цитата jah:



и существующее ПО типа winrar и 7zip определяет как это делать на своё усмотрение:
[решено] просмотр файла в архиве без распаковки архива




Нет. На Ваше усмотрение.
Аватара пользователя
Iska

Re: [решено] просмотр файла в архиве без распаковки архива

Сообщение Iska »

Цитата jah:



Если, исходя из вышеизложенного, я теперь правильно сделал вывод, то
[решено] просмотр файла в архиве без распаковки архива




Если не придираться к формулировкам -- то смысл именно такой.

Метод (solid или нет), если архиватор позволяет и то и то, выбираете вы сами.


Цитата jah:



потенциально любой алгоритм сжатия можно использовать как для получения непрерывных, так и не непрерывных архивов
[решено] просмотр файла в архиве без распаковки архива




Потенциально -- да.


Цитата jah:



zip - только не непрерывными
[решено] просмотр файла в архиве без распаковки архива




Я не смотрел последние версии WinZIP.


Цитата jah:



7zip не совсем понятно как делает
[решено] просмотр файла в архиве без распаковки архива




В настройках выбора не нашёл, в описании тоже, в настройках плагина для TotalCmd -- тоже.

Сжал exe-файл размером 225 877 байт в архив .7z, а затем его же вместе с его копией, дав ей другое имя.

Результат: 158 462 байта и 159 674 байта соответственно. Разница 1212 байт, менее 1% от сжатого первого файла.

Вывод: архив непрерывный (а часть разницы ушла на хранение чисто второго имени).



PS

Уточнение по 7z в следующей реплике, "по вновь открывшимся обстоятельствам".




Цитата Iska:



Потому на данный момент можно ли делать в том или ином формате solid-архивы определяется самим используемым форматом.
[решено] просмотр файла в архиве без распаковки архива




В документации к очень широко распространённому в древности архиватору ARJ была рекомендация по уменьшению размера архива: упаковать все файлы с опцией без сжатия -m0 (т.е. фактически не упаковывать, а только сшить все архивируемые файлы в один выходной файл), а затем уже применить к полученному архиву опцию максимального сжатия -m5. Т.е. непрерывный архив создавался, но создавался в два шага.
Ответить

Вернуться в «Хочу все знать»