ZIP - radishengine/drowsy GitHub Wiki

http://fileformats.archiveteam.org/wiki/ZIP

Main Type: application/zip
Extension: .zip

Type Parameters

  • x-join-parts(optional): If this is a multi-part archive that has been joined together from application/x-joinable parts, this will be a comma-separated list of byte lengths for each part of the file, in order.

Splits to

If this is a single-part archive:

If this is the final part of a multi-part archive:

  • application/x-joinable; to=application/zip; order=[number]; final=true
    (...where [number] will be the total number of parts in the archive, minus 1.)

Join Extensions

  • .z00: application/x-joinable; to=application/zip; order=0
  • .z01: application/x-joinable; to=application/zip; order=1
  • (...)
  • .z98: application/x-joinable; to=application/zip; order=98
  • .z99: application/x-joinable; to=application/zip; order=99

Chunks

Chunk Type: chunk/zip

Use the which parameter to determine the chunk subtype:

Chunk: trailer

Chunk: central

Chunk: local

Splits to:

If this is an uncompressed/unencrypted record, one of the following:

  • JPEG (image/jpeg )
  • ...a data type looked up from Central Dispatch by file extension ('application/octet-stream` if the extension is not listed)

If this is a compressed/encrypted record, one of the following (very likely to be "Deflated"):

  • IBM Terse (application/x-ibm-terse; variant=new ❌)
  • lz77 (application/x-lz77 ❌)
  • wavpack (audio/x-wavpack ❌)
  • ppmd (application/x-ppmd; version=i; rev=1 ❌)
  • AES (application/x-aes ❌)

...with an additional type parameter: from, which will be set to a type name (percent-encoded if necessary) looked up from Central Dispatch by file extension. If the extension is not listed, from will either be set to application/octet-stream, or not be set at all.