Ruby的压缩库?

时间:2009-05-10 13:39:19

标签: ruby compression

是否有可用于Ruby的开源压缩/分解库?有人实施过LZW吗?

或者,是否有任何开源库使用压缩组件,可以想象这些组件可以独立使用?

编辑 - 感谢您的回答!我应该提到我必须压缩的是长字符串,它只驻留在数据库中(我不会压缩文件)。此外,如果任何库可以做到这一点,那么在JavaScript中用于客户端comp / decomp的同等实现将是理想的,因为这将适用于Web应用程序。

4 个答案:

答案 0 :(得分:5)

您可以在ruby stdlib下找到所有已发布的ruby库的清单。

我使用zlib库,它是开放的,它在任何地方使用,你会找到几乎所有语言的库!

答案 1 :(得分:3)

答案 2 :(得分:2)

如果您更关心大小而不是速度,或者您希望确保其他语言中的绑定具有兼容性,那么zl​​ib就可以了。对于有线传输,速度和CPU利用率通常更为重要。

一些集成了更快速压缩库的ruby库是: Google的SnappyQuickLZLZO

答案 3 :(得分:0)

我发现最好的C lzw实现是lzw-ab

它用于流式传输(srcdst回调)。可以对其进行重构,以提供像brotli(BrotliDecoderStateBROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT等)这样的流接口。似乎可以提供像Zlib::InflateZlib::Deflate这样的api作为ruby扩展名。