niamtokik / dotzip

PKWARE ZIP File Format Implementation in Elixir

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dotzip

ZIP is one of the most widely used compressed file formats. It is universally used to aggregate, compress, and encrypt files into a single interoperable container. No specific use or application need is defined by this format and no specific implementation guidance is provided. This document provides details on the storage format for creating ZIP files. Information is provided on the records and fields that describe what a ZIP file is. -- from official specification file

Note: This project is a work in progress. Please don't use it in production.

Installation

If available in Hex, the package can be installed by adding dotzip to your list of dependencies in mix.exs:

def deps do
  [
    {:dotzip, "~> 0.1.0"}
  ]
end

Decoding Example

create a zip file

cd /tmp
echo test > test
zip test.zip test

extract information

{:ok, file} = :file.read_file("/tmp/test.zip")
Dotzip.decode(file)

Resources

Other implementation

Trademarks

PKWARE, PKZIP, SecureZIP, and PKSFX are registered trademarks of PKWARE, Inc. in the United States and elsewhere. PKPatchMaker, Deflate64, and ZIP64 are trademarks of PKWARE, Inc. Other marks referenced within this document appear for identification purposes only and are the property of their respective owners.

Notes

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/dotzip.

About

PKWARE ZIP File Format Implementation in Elixir

License:ISC License


Languages

Language:Elixir 100.0%