Clojure で deflate, inflate するのに net.tbt-post/zlib-tiny が便利
JavaJava.icon の java.util.zip package を使っている JavaJava.icon の API はダルいからな…。こういう wrapper を使う 圧縮
(zlib-tiny.core/deflate b level)
(zlib-tiny.core/gzip b)
伸張
(zlib-tiny.core/inflate b)
(zlib-tiny.core/gunzip b)
deflate ($ \negzip) した byte 列を保存した file の中身を伸張する
code:tmp.clj
(-> "deflated.tmp"
io/file
.toPath
java.nio.file.Files/readAllBytes
zlib/inflate
slurp
println)
$ clojure -Sdeps '{:deps {net.tbt-post/zlib-tiny {:mvn/version "0.5.0"}}}' -M tmp.clj
BabashkaBabashka.icon では java.util.zip.Adler32 を import できず動かない