Что делать, если возникает ошибка сжатых zip папок?

Часто при скачивании архивированных файлов в интернете папка скачивается, в «Свойствах» отражается заявленный объем, но потом она не открывается или открывается с появлением пояснения, что «архив поврежден». Самой распространенной ошибкой пользователя бывает возникшее желание скачать файлы заново и снова попытаться их разархивировать.

Если уж вам попалась «битая» ссылка с поврежденными файлами, имеет смысл снова дать поисковику задание найти то, что вы искали, но скачать искомое уже из другого сисходника. Итак, что же делать, если возникает ошибка сжатых zip папок.

Значение сжатой ZIP-папки?

Сжатая zip-папка — это имя ошибки, содержащее сведения об ошибке, включая причины ее возникновения, неисправность системного компонента или приложения для возникновения этой ошибки вместе с некоторой другой информацией. Численный код в имени ошибки содержит данные, которые могут быть расшифрованы производителем неисправного компонента или приложения. Ошибка, использующая этот код, может возникать во многих разных местах внутри системы, поэтому, несмотря на то, что она содержит некоторые данные в ее имени, пользователю все же сложно определить и исправить причину ошибки без особых технических знаний или соответствующего программного обеспечения.

Причины сжатой ZIP-папки?

Если вы получили эту ошибку на своем ПК, это означает, что произошла сбой в работе вашей системы. Общие причины включают неправильную или неудачную установку или удаление программного обеспечения, которое может привести к недействительным записям в вашем реестре Windows, последствиям атаки вирусов или вредоносных программ, неправильному отключению системы из-за сбоя питания или другого фактора, кто-то с небольшими техническими знаниями, случайно удалив необходимый системный файл или запись в реестре, а также ряд других причин. Непосредственной причиной ошибки «Сжатая почтовая папка» является неправильное выполнение одной из обычных операций с помощью системного или прикладного компонента.

Данные после конца блока полезных данных

Сообщение программы 7-Zip в конце распаковки: «Есть данные после конца блока полезных данных» возникает при использовании двух разных архиваторов. Запаковывались документы через WinRAR, где установлена опция «Добавить запись восстановления». Разработчики предлагают не бороться с ошибкой, а продолжать распаковывать.

Никаких проблем с информацией внутри не будет, так как 7-Zip уже завершил работу, и остается нажать «Закрыть».

Источник проблемы очевиден, если пользователь получает ошибку при распаковке через контекстное меню или интерфейс файлового менеджера. Для проверки выделите документы мышкой и перенесите в новую папку. Если сообщения нет, то и в остальных случаях его можно игнорировать.

Разработчики 7-Zip выявили связь с WinRAR после обнаружения в архиве данных, объем которых не превышает 50 Кб. Распаковщик предупреждает об этом документе, поэтому сообщение игнорируется.

Что делать, чтобы избежать ошибки неправильно сжатых zip папок?

  • Скачайте бесплатно утилиту Hamster Zip Archiver, задав в поиске именно это название. Эта служба может работать с любыми архивами: Zip, WinZip, 7zip, WinRAR и другими. Если вы получили письмо со сжатыми прикрепленными файлами и не можете их открыть, скачайте эту програму, установите ее и откройте присланное с ее помощью.

  • Архиватор 7-Zip, помимо высокой степени сжатия, имеет заданную опцию «самораспаковки», но только для файлов, в нем же и архивированных. Разархивировать он может 18 других форматов, являющихся наиболее распространенными. Разработчик сделал его функциональным для ОС Microsoft Windows, GNU/Linux, FreeBSD, DOS. При нажатии на ярлычок архиватора открывается менеджер 7-Zip. Там вы можете выбрать любую папку (либо открыть другой каталог для обнаружения любого файла) и «Добавить его к архиву» в контекстном меню, которое вызывается правой кнопкой мыши. Оспорить эффективность формата 7-Zip в состоянии разве что формат Rar, но недостаток последнего существенен – за него приходится платить.
  • Утилиту IZArc многие называют полиглотом. Скачивая ее по ссылкам, выданным поисковиком, будьте бдительны и вовремя ставьте или снимайте галочки – программа предлагает попутно установить множество других функционалов. С ее помощью можно конвертировать из одного формата в другой, можно зайти в «Настройки» и автоматизировать проверку на вирусы и, наконец, у нее есть функция исправления поврежденных архивов. Интерфейс достаточно прост и пошагово объяснит все требуемые действия.

Стандартной утилитой для архивации файлов в системе Windows XP являются сжатые ZIP-папки. Если вам необходимо заархивировать что-либо для экономии места, имейте в виду, что mp3- файлы уже сжаты, поэтому архивируются не слишком успешно. Современные компьютеры обладают хорошим объемом памяти, лучше не рисковать хорошей музыкой или фото. Если жесткий диск перегружен, удалите что-то ненужное или сбросьте какие-то файлы на флешку. Еще один совет – скачивайте на свой комп только лучшие архиваторы!

Неподдерживаемый метод

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

В сообщении будет указано название документа, который не копируется на компьютер.

Иногда быстрее воспользоваться другим распаковщиком. Если аналогов на компьютере нет, то обновите 7-Zip до последней версии.

С подобной ошибкой встречаются пользователи, скачивающие документы в формате «zipx». Новые методы, разработанные WinZip, позволяют сократить размер файла, но другим приложениям пришлось выпускать обновления, чтобы решить проблему.

Сайт 7-Zip не открывается

Ошибки в архиваторе возникают часто, но пользователи совместно с разработчиками научились их решать и сокращать в последних версиях программы. О том, почему сайт www.7-zip.org не открывается и как получить доступ, подробно рассказывается в отдельной статье.

Обновить 7-Zip для исправления ошибок можно на официальном сайте разработчика. Но сейчас пользователи испытывают трудности с доступом к ресурсу, поэтому скачайте архиватор 7-Zip бесплатно на нашем сайте.

Как восстановить архив

  1. Запустите WinRAR, через интерфейс выберите Tools, а затем – Repair archive.
  2. Открыть поврежденный архив не получится, поэтому создайте новый и перейдите в папку к файлу с потерянными пакетами.
  3. Перед восстановлением щелкните один раз по названию.
  4. Иногда требуется указать путь для восстановленного архива и его формат. Расширение должно оставаться тем же, что было до потери информации. Если все указано верно, нажмите ОК и дождитесь окончания работы WinRAR.

Если приложение справится и ошибка архива 7-Zip исчезнет, то загружать файл заново не придется.

Проблема может возникать постоянно. Для решения систематического сбоя проверьте оперативную память и жесткий диск программным обеспечением Aida.

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

Код 1C v 8.х // Распаковывает файл архива ZIP в указанный каталог; Извлекает все файлы архива
//
// Параметры:
// ПолноеИмяФайлаАрхива — Строка — имя файла архива, который необходимо распаковать
// ПутьРаспаковкиФайлов — Строка — путь по которому необходимо распаковать файлы
// ПарольАрхива — Строка — пароль для распаковки архива. По умолчанию пустая строка
//
// Возвращаемое значение:
// Результат — Булево — Истина, если успешно, Ложь, если нет.
//
Функция РаспаковатьZipФайл(Знач ПолноеИмяФайлаАрхива, Знач ПутьРаспаковкиФайлов, Знач ПарольАрхива = «») Экспорт
// возвращаемое значение функции
Результат = Истина;
Попытка
Архиватор = Новый ЧтениеZipФайла(ПолноеИмяФайлаАрхива, ПарольАрхива);
Исключение
Архиватор = Неопределено;
СообщитьОбОшибке(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
Возврат Ложь;
КонецПопытки;
Попытка
Архиватор.ИзвлечьВсе(ПутьРаспаковкиФайлов, РежимВосстановленияПутейФайловZIP.НеВосстанавливать);
Исключение
СтрокаСообщения = НСтр(«ru = ‘Ошибка при распаковке файлов архива: %1 в каталог: %2′»);
СтрокаСообщения = ПодставитьПараметрыВСтроку(СтрокаСообщения, ПолноеИмяФайлаАрхива, ПутьРаспаковкиФайлов);
Сообщить(СтрокаСообщения);
Результат = Ложь;
КонецПопытки;
Архиватор.Закрыть();
Архиватор = Неопределено;
Возврат Результат;
КонецФункции
// Запаковывает указанный каталог в файл архива ZIP
//
// Параметры:
// ПолноеИмяФайлаАрхива — Строка — имя файла архива, в который необходимо запаковать
// МаскаУпаковкиФайлов — Строка — имя файла, помещаемого в архив, или маска.
// Недопустимо использование в именах файлов и папок букв национальных алфавитов, которые при
// преобразовании из символов UNICODE в узкие символы могут быть преобразованы с потерей информации.
// Рекомендуется использовать в именах файлов и папок символы латинского алфавита.
// ПарольАрхива — Строка — пароль для архива. По умолчанию пустая строка
//
// Возвращаемое значение:
// Результат — Булево — Истина, если успешно, Ложь, если нет.
//
Функция ЗапаковатьВZipФайл(Знач ПолноеИмяФайлаАрхива, Знач МаскаУпаковкиФайлов, Знач ПарольАрхива = «») Экспорт
// возвращаемое значение функции
Результат = Истина;
Попытка
Архиватор = Новый ЗаписьZipФайла(ПолноеИмяФайлаАрхива, ПарольАрхива);
Исключение
Архиватор = Неопределено;
СообщитьОбОшибке(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
Возврат Ложь;
КонецПопытки;
Попытка
Архиватор.Добавить(МаскаУпаковкиФайлов, РежимСохраненияПутейZIP.НеСохранятьПути);
Архиватор.Записать();
Исключение
СтрокаСообщения = НСтр(«ru = ‘Ошибка при запаковке файлов архива: %1 из каталог: %2′»);
СтрокаСообщения = ПодставитьПараметрыВСтроку(СтрокаСообщения, ПолноеИмяФайлаАрхива, МаскаУпаковкиФайлов);
Сообщить(СтрокаСообщения);
Результат = Ложь;
КонецПопытки;
Архиватор = Неопределено;
Возврат Результат;
КонецФункции

В примере используется строковая функция ПодставитьПараметрыВСтроку():

Код 1C v 8.х // Подставляет параметры в строку. Максимально возможное число параметров — 9.
// Параметры в строке задаются как %<номер параметра>. Нумерация параметров начинается с единицы.
//
// Параметры:
// СтрокаПодстановки – Строка – шаблон строки с параметрами (вхождениями вида «%ИмяПараметра»);
// Параметр<n> — Строка — подставляемый параметр.
//
// Возвращаемое значение:
// Строка – текстовая строка с подставленными параметрами.
//
// Пример:
// ПодставитьПараметрыВСтроку(НСтр(«ru=’%1 пошел в %2′»), «Вася», «Зоопарк») = «Вася пошел в Зоопарк».
//
Функция ПодставитьПараметрыВСтроку(Знач СтрокаПодстановки,
Знач Параметр1, Знач Параметр2 = Неопределено, Знач Параметр3 = Неопределено,
Знач Параметр4 = Неопределено, Знач Параметр5 = Неопределено, Знач Параметр6 = Неопределено,
Знач Параметр7 = Неопределено, Знач Параметр8 = Неопределено, Знач Параметр9 = Неопределено) Экспорт
Если СтрокаПодстановки = Неопределено ИЛИ СтрДлина(СтрокаПодстановки) = 0 Тогда
Возврат «»;
КонецЕсли;
Результат = «»;
НачПозиция = 1;
Позиция = 1;
Пока Позиция <= СтрДлина(СтрокаПодстановки) Цикл
СимволСтроки = Сред(СтрокаПодстановки, Позиция, 1);
Если СимволСтроки <> «%» Тогда
Позиция = Позиция + 1;
Продолжить;
КонецЕсли;
Результат = Результат + Сред(СтрокаПодстановки, НачПозиция, Позиция — НачПозиция);
Позиция = Позиция + 1;
СимволСтроки = Сред(СтрокаПодстановки, Позиция, 1);
Если СимволСтроки = «%» Тогда
Позиция = Позиция + 1;
НачПозиция = Позиция;
Результат = Результат + «%»;
Продолжить;
КонецЕсли;
Попытка
НомерПараметра = Число(СимволСтроки);
Исключение
ВызватьИсключение НСтр(«ru=’Входная строка СтрокаПодстановки имеет неверный формат: %'» + СимволСтроки);
КонецПопытки;
Если СимволСтроки = «1» Тогда
ЗначениеПараметра = Параметр1;
ИначеЕсли СимволСтроки = «2» Тогда
ЗначениеПараметра = Параметр2;
ИначеЕсли СимволСтроки = «3» Тогда
ЗначениеПараметра = Параметр3;
ИначеЕсли СимволСтроки = «4» Тогда
ЗначениеПараметра = Параметр4;
ИначеЕсли СимволСтроки = «5» Тогда
ЗначениеПараметра = Параметр5;
ИначеЕсли СимволСтроки = «6» Тогда
ЗначениеПараметра = Параметр6;
ИначеЕсли СимволСтроки = «7» Тогда
ЗначениеПараметра = Параметр7;
ИначеЕсли СимволСтроки = «8» Тогда
ЗначениеПараметра = Параметр8;
ИначеЕсли СимволСтроки = «9» Тогда
ЗначениеПараметра = Параметр9;
Иначе
ВызватьИсключение НСтр(«ru=’Входная строка СтрокаПодстановки имеет неверный формат: %'» + ЗначениеПараметра);
КонецЕсли;
Если ЗначениеПараметра = Неопределено Тогда
ЗначениеПараметра = «»;
Иначе
ЗначениеПараметра = Строка(ЗначениеПараметра);
КонецЕсли;
Результат = Результат + ЗначениеПараметра;
Позиция = Позиция + 1;
НачПозиция = Позиция;
КонецЦикла;
Если (НачПозиция <= СтрДлина(СтрокаПодстановки)) Тогда
Результат = Результат + Сред(СтрокаПодстановки, НачПозиция, СтрДлина(СтрокаПодстановки) — НачПозиция + 1);
КонецЕсли;
Возврат Результат;
КонецФункции

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *