libzip-crystal
Crystal bindings for libzip, which allows you to create and modify Zip archives.
Installation
Add this to your application's shard.yml
:
dependencies:
libzip-crystal:
github: n-pn/libzip.cr
Usage
Use crystal doc
to generate API documentation and crystal spec
to
run the test suite. Here is a basic example:
require "zip"
# create a new archive named foo.zip and populate it
Zip::Archive.create("foo.zip") do |zip|
# add file "/path/to/foo.png" to archive as "bar.png"
zip.add_file("bar.png", "/path/to/foo.png")
# add file "baz.txt" with contents "hello world!"
zip.add("baz.txt", "hello world!")
end
# read baz.txt from archive foo.zip
Zip::Archive.open("foo.zip") do |zip|
# read bzr.txt as string
str = String.new(zip.read("baz.txt"))
# print baz.txt
puts "contents of baz.txt: #{str}"
end
Contributing
- Fork it ( https://github.com/pablotron/libzip-crystal/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request
Contributors
- pabs Paul Duncan - creator, maintainer