xz.cr v0.1.6
Crystal XZ
Crystal bindings to the XZ (lzma) compression library. Requires liblzma version 5.2.4 and/or higher.
Installation
- 
Add the dependency to your
shard.yml:dependencies: xz: github: naqvis/xz.cr - 
Run
shards install 
Usage
require "xz"
XZ shard provides both Compress::XZ::Reader and Compress::XZ::Writer.
Example: decompress an xz file
require "xz"
string = File.open("file.xz") do |file|
   Compress::XZ::Reader.open(file) do |xz|
     xz.gets_to_end
   end
end
pp string
Example: compress to xz compression format
require "xz"
File.write("file.txt", "abcd")
File.open("./file.txt", "r") do |input_file|
  File.open("./file.xz", "w") do |output_file|
    Compress::XZ::Writer.open(output_file) do |xz|
      IO.copy(input_file, xz)
    end
  end
end
Contributing
- Fork it (https://github.com/naqvis/xz.cr/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
- Ali Naqvi - creator and maintainer
 
Repository
  xz.cr
Owner
  
  Statistic
  - 15
 - 0
 - 0
 - 1
 - 0
 - 8 months ago
 - September 27, 2019
 
License
  MIT License
Links
  
  Synced at
  Mon, 03 Nov 2025 15:21:31 GMT
Languages