ToolActToolAct

Упаковка файлов в ZIP

Упаковка нескольких файлов в ZIP-архив с поддержкой перетаскивания, обработка в браузере

Загрузка файлов

Перетащите файлы сюда или нажмите для выбора

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

Что такое ZIP-сжатие?

Упаковка ZIP объединяет выбранные файлы в один загружаемый архив и часто упрощает передачу или хранение. Она полезна, когда нужно отправить несколько отдельных файлов, подготовить пакет для передачи, собрать скриншоты, приложить документы к письму или сделать небольшую резервную копию. ZIP является форматом без потерь: после распаковки файлы должны восстановиться точно. Однако уже сжатые форматы вроде JPG, PNG, MP4 и PDF могут почти не уменьшиться. Этот браузерный инструмент создает архив локально, поэтому выбранные файлы не нужно загружать на сервер. Он подходит для умеренных наборов файлов; очень большие файлы могут потреблять много памяти. ZIP не является шифрованием, поэтому конфиденциальным файлам нужна дополнительная защита.

Инструкция по использованию

Инструкция по использованию

  1. Перетащите файлы в область загрузки или нажмите кнопку «Выбрать файлы» для добавления
  2. Просмотрите список файлов и при необходимости удалите лишние
  3. Введите имя ZIP-файла (необязательно)
  4. Нажмите кнопку «Создать ZIP-архив», чтобы скачать сжатый файл

Примечания к архиву

  • Перед созданием архива проверьте имена файлов и структуру папок: ZIP сохраняет пути и может раскрыть нежелательные имена.
  • Для долгосрочного хранения или обмена с другими системами избегайте неподдерживаемых символов в именах файлов.

Применение

Соберите отдельные файлы в локальный ZIP для быстрой передачиПеретащите или выберите несколько файлов, просмотрите их имена, MIME-типы, отдельные размеры и общий объём, затем удалите лишнее перед созданием архива. Поле с пользовательским именем определяет имя скачиваемого .zip-файла, а список файлов обновляется в реальном времени при добавлении и удалении. Это удобный способ передать папку скриншотов, набор квитанций или небольшой экспорт из инструмента, который сам не умеет упаковывать.
Сжимайте файлы в браузере без загрузки на серверСтраница использует JSZip, читает каждый выбранный File через arrayBuffer и записывает архив DEFLATE уровня 6 как Blob для скачивания. DEFLATE — стандартный метод ZIP, который обеспечивает умеренную степень сжатия при хорошей скорости, тогда как LZMA из 7-Zip сжимает текст и бинарные данные значительно сильнее, но создаёт .7z-файл, для открытия которого стандартным распаковщикам иногда нужны дополнительные плагины. Поскольку все шаги выполняются локально, черновики, экспорты и скриншоты остаются на устройстве, а уже сжатые форматы вроде JPG, MP4 и PDF обычно уменьшаются очень мало, тогда как папка с обычным текстом или CSV сжимается сильнее всего.
Создайте предсказуемый архив, когда структура папок не важнаИнструмент добавляет выбранные файлы по имени и намеренно сохраняет простой рабочий процесс: без выбора папок, без шифрования паролем, без настройки уровня сжатия. Он лучше всего подходит для чистых плоских архивов, а не для сохранения дерева каталогов. Если структура подпапок важна, десктопный архиватор с полноценным выбором папок — более надёжный вариант.
Контролируйте итоговый размер и следите за границей ZIP64 в 4 ГБСледите за нарастающим общим размером при добавлении файлов и удаляйте крупные объекты, если набор приближается к лимиту вложения почты или загрузки. Классический формат ZIP ограничивает один архив примерно 4 ГБ, и файлы больше этого размера требуют ZIP64, который данный инструмент не создаёт, поэтому слишком большой набор не удастся собрать. JSZip также строит архив в памяти, поэтому набор в несколько гигабайт может исчерпать вкладку ещё до начала скачивания.
Не используйте инструмент, если нужны шифрование паролем, защита или сохранение меток времениСтраница не предоставляет AES-шифрование, запрос пароля или выбор папки, поэтому для сборок с защитой используйте десктопный архиватор. Учтите, что классическая схема паролей ZIP — это устаревший потоковый шифр, который считается слабым против настойчивого злоумышленника, а данный инструмент вообще не добавляет шифрование. Имена файлов в Unicode записываются с флагом UTF-8, но инструмент не сохраняет исходные метки времени файлов, поэтому архив резервной копии будет выглядеть как только что созданный при распаковке.

Технический принцип

Контейнер ZIP определяется спецификацией PKWARE APPNOTE (текущая ревизия 6.3.10). Файл `.zip` — это последовательность трёх типов записей: каждому хранимому файлу предшествует Local File Header с 4-байтовой сигнатурой `0x04034b50` (PK\x03\x04), за которым следуют сжатые данные; после последнего файла идёт Central Directory — таблица File Headers (сигнатура `0x02014b50`), которая перечисляет каждую запись с именем, размерами, CRC-32 и смещением обратно к локальному заголовку; наконец, запись End of Central Directory (сигнатура `0x06054b50`) находится в самом конце файла и указывает на начало центрального каталога. Читатели разбирают `.zip` с конца: сканируют назад от хвоста файла в поисках сигнатуры EOCD, переходят к центральному каталогу, затем переходят к каждому локальному заголовку — поэтому ZIP поддерживает потоковое добавление и быстрый произвольный доступ к одной записи без чтения всего архива. Этот инструмент использует библиотеку JSZip (с fflate в качестве более быстрой альтернативы) для сборки архива в браузере. Каждый объект `File`, выбранный пользователем, читается как `ArrayBuffer`, добавляется через `zip.file(name, buffer)`, затем `zip.generateAsync({ type: 'blob', compression: 'DEFLATE', compressionOptions: { level: 6 } })` создаёт `Blob`, который предоставляется пользователю для скачивания через `URL.createObjectURL()`. DEFLATE — стандартный метод сжатия ZIP, определённый в RFC 1951; он сочетает скользящее окно LZ77 для словарного поиска с кодированием Хаффмана. Уровень сжатия 6 (по умолчанию) — это точка баланса: уровень 1 примерно в 4 раза быстрее, но на 5-15% больше, тогда как уровень 9 в 2-3 раза медленнее уровня 6 при дополнительном сжатии всего на 1-2%. Целостность обеспечивается CRC-32, вычисляемым для каждого файла с полиномом IEEE 802.3 `0xEDB88320` (реверсированным), и сохраняемым как в локальном заголовке файла, так и в записи центрального каталога. Имена файлов записываются в UTF-8, когда установлен бит 11 общего назначения (обязательно с APPNOTE 6.3.0, 2006); без этого флага старые инструменты используют локальную OEM-кодовую страницу (CP437 в DOS, CP936/GBK в китайской Windows) и не-ASCII имена отображаются как «кракозябры». Классический формат ZIP использует 32-битные поля для размеров и смещений, ограничивая одну запись и общий архив примерно 4 ГБ (2^32 − 1 = 4 294 967 295 байт); ZIP64, определённый в APPNOTE 4.5+, расширяет их до 64 бит через дополнительные поля, но сборка JSZip в памяти ограничивает практический размер архива несколькими сотнями МБ до исчерпания памяти вкладки.

  • Структура файла ZIP (PKWARE APPNOTE 6.3.10): Local File Headers (`0x04034b50`) + данные файла, затем Central Directory (`0x02014b50`), завершается EOCD (`0x06054b50`).
  • Читатели разбирают с хвоста: сканируют назад в поисках сигнатуры EOCD, затем переходят к центральному каталогу — это обеспечивает быстрое извлечение одного файла без потоковой передачи всего архива.
  • Сжатие DEFLATE (RFC 1951) = скользящее окно LZ77 + кодирование Хаффмана; уровень 6 — баланс по умолчанию, уровень 9 даёт ~1-2% при замедлении в 2-3 раза.
  • Целостность: CRC-32 с полиномом `0xEDB88320` (реверсированный IEEE 802.3), сохраняется в локальном заголовке и центральном каталоге; проверяется при извлечении.
  • Имена файлов в UTF-8 требуют бит 11 общего назначения (APPNOTE 6.3.0, 2006); без него старые инструменты используют CP437 / локальную OEM-страницу и отображают не-ASCII имена как «кракозябры».
  • Классический ZIP ограничивает размеры 2^32 − 1 = 4 294 967 295 байт на файл и на архив; дополнительные поля ZIP64 (APPNOTE 4.5+) расширяют до 64 бит для больших объёмов.
  • Браузерная реализация: JSZip / fflate читают каждый `File` через `arrayBuffer()`, строят архив в памяти и отдают как `Blob` для скачивания — без загрузки на сервер.

Примеры

Упаковка файлов проекта

Входы:  src/, package.json, README.md (десятки файлов)
Выход: project-2026-06-11.zip (один архив, сжатие deflate)
Применение: поделиться снимком с коллегой или приложить к релизу

Передача нескольких файлов (снижение накладных расходов)

Входы:  100 маленьких изображений, по 5-50 KB каждое (≈ 3 MB суммарно)
Выход: photos.zip (один файл, один HTTP-запрос, без накладных расходов на каждый файл)
Применение: при загрузке множества мелких файлов в email или хранилище с тарификацией за файл

Организация документов

Входы:  invoice.pdf, contract.docx, signed-acknowledgement.png
Выход: documents-2026Q2.zip
Применение: объединение налоговых, юридических или HR-записей в датированный архив для политик хранения

Часто задаваемые вопросы

Загружаются ли мои данные на сервер для создания ZIP?

Нет. ZIP-файл создаётся в вашем браузере с помощью JSZip. Исходные файлы читаются через FileReader API, сжимаются локально и предлагаются для скачивания. Сеть не задействуется.

Какой уровень сжатия используется?

По умолчанию DEFLATE уровня 6 — баланс скорости и размера, как в большинстве ZIP-инструментов. Чисто текстовое содержимое (логи, JSON, исходный код) сжимается хорошо; уже сжатое содержимое (JPEG, MP4, ZIP) почти не уменьшается.

Можно ли поставить пароль?

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

Каков предел по числу и размеру файлов?

Практический предел — память браузера. На большинстве десктопов работает несколько сотен мегабайт. Мобильные браузеры жёстче. Для очень больших архивов используйте десктопные инструменты (7-Zip, WinRAR, командный zip) — они стримят данные с диска, а не держат всё в оперативной памяти.

Сохраняется ли структура папок?

Да. Перетащите папку из файловой системы, и относительные пути сохранятся внутри ZIP. Страница может показать дерево, чтобы вы сверили структуру до создания архива.

Откроется ли ZIP корректно в Windows, macOS и Linux?

Да. JSZip создаёт стандартные ZIP-файлы. Имена файлов в UTF-8 работают везде, где есть современная ОС; очень старые версии Windows могут показывать китайские или японские имена как кракозябры, если принудительно используется кодовая страница не UTF-8. Современные macOS и Linux всегда корректно работают с UTF-8.

В чём разница между ZIP и 7Z?

ZIP использует сжатие DEFLATE и читается на любой ОС без дополнительного ПО. 7Z использует LZMA/LZMA2 и даёт заметно лучшее сжатие текста, но для распаковки нужен 7-Zip или совместимая программа. Эта страница создаёт только ZIP.

Связанные инструменты

Распаковка ZIP

Бесплатный онлайн-распаковщик ZIP-архивов: загрузите архив, просмотрите файлы и скачайте нужные или сразу все. Распаковка идёт локально в браузере.

Инструмент проверки хеша файла

Бесплатный онлайн-калькулятор хэша файла: MD5, SHA-1, SHA-256, SHA-512 и другие. Вычисляйте контрольную сумму и проверяйте целостность файлов.

Инструмент проверки MD5 файла

Бесплатный онлайн-инструмент для вычисления MD5 файла. Проверяйте целостность файлов, обнаруживайте изменения и убеждайтесь, что файлы не повреждены.

Инструмент сжатия изображений

Бесплатный онлайн-компрессор изображений для JPEG, PNG и WebP. Настраивайте качество и размеры, а локальная обработка в браузере защищает приватность.

Кодировщик/Декодировщик Base64

Онлайн-инструмент для кодирования и декодирования Base64 с поддержкой UTF-8 текста, кириллицы и изображений. Мгновенное кодирование без установки программ.

Конвертер Word в PDF

Бесплатный онлайн-конвертер Word в PDF. Поддерживает форматы .docx и .doc с конвертацией в один клик, сохранением форматирования и автоматической оптимизацией размера PDF. Файлы удаляются после конвертации.