Skip to content

Inspect ZIP Contents and Export a Subset

Drop a ZIP to list every entry with its compression method, packed size, original size and ratio. The page reads the archive’s central directory, so password-protected and BZIP2/LZMA archives are listed as well; entries that cannot be unpacked are marked and locked, and the rest can be filtered, selected and downloaded together as a new ZIP. Everything runs in the browser.

Runs locally in your browser
·
ZIP

How to inspect a ZIP archive and export a subset of its files

Drop a ZIP on the input panel: the page reads its central directory and lists every entry with the path, compression method, packed size, original size and ratio. Building the list needs no decompression, so archives that usually fail in browser unzippers — password-protected, BZIP2, LZMA or Zstandard — are still listed entry by entry, with the unreadable rows marked “Not exportable” instead of rejecting the whole file.

In testing, a six-file archive with one folder, an empty file and two non-ASCII names listed 6 files in 1 folder; a 48 MiB file of zeros reported 47.8 KB packed, 48.0 MB unpacked and a 100% ratio; an Info-ZIP archive with nested folders reported 3 files in 2 folders; a legacy archive written without the UTF-8 flag showed café.txt correctly; and two members sharing the name same.txt both appeared as separate rows.

  1. Drop a .zip on the input panel, or click the zone and choose one. The archive is read in the browser and is not uploaded; a file above 300 MB is refused before it is read.
  2. Type in the filter box to narrow the list by path. “Select all” applies to the rows the filter currently shows, so a filtered selection takes one click.
  3. Untick the entries you do not want. Folder rows and entries the page cannot unpack are locked.
  4. Press “Download selected as ZIP”. Each selected entry is unpacked, checked against the CRC-32 recorded in the archive and written into a new ZIP that keeps the original folder paths.
  5. Press Clear to empty the table, the filter and the file input so the next archive starts clean.

Which entries can be exported, what the columns measure, and the local limits

What each column reports

Path is the entry name as stored, with backslashes normalised to slashes and a leading slash removed. Method is the compression the archive declares — Store, Deflate, BZIP2, LZMA or Zstandard in the archives tested. Compressed and Original are the sizes recorded in the central directory; Ratio is 1 − compressed ÷ original, shows 0% when a small file grows, and — for entries of 0 bytes.

The numbers come from the archive’s own directory, so they match what other tools report without unpacking anything. When a listing disagrees with a system unzip, compare the Method column first: different writers can store the same content with different methods.

What is listed but cannot be exported

Export needs the original bytes plus Store or Deflate, and it verifies each entry’s CRC-32 before writing. Password-protected entries, BZIP2, LZMA, Zstandard, Deflate64 and other methods are listed with their real sizes but marked “Not exportable” and cannot be selected.

A member whose data does not match its stored CRC stops the export and names the entry — for example “Could not export readme.txt: the stored data is damaged or encrypted” — so a damaged archive never produces a silently broken download. Duplicate names are listed once per member instead of being merged.

Limits, safety and privacy

One archive at a time: up to 300 MB for the file itself, 750 MB of unpacked content and 5,000 entries. An archive containing a ../ path is refused with “Archive limits exceeded or unsafe paths were found”, and entry names are sanitised before they reach the list.

Nothing is uploaded — the file is read with the File API inside the page, the exported ZIP is built in memory and the download is produced by the browser, so the tool keeps working offline once the page has loaded.

Recent tools: