是否可以使用Rhodes框架解压缩档案?支持什么类型的档案?
由于它基于ruby,我认为您可以使用libchive或ZLib (deflate-algorithm的实现,gzip格式)的ruby包装器。如果你想使用纯ruby库,可以尝试Zliby,它是Zlib的替代品。
libchive支持以下归档类型(来源http://code.google.com/p/libarchive/wiki/LibarchiveFormats)
过滤器支持
libchive 2.6及更新版本支持读取时使用多个过滤器档案。libchive 3.0及更高版本写入时支持多个过滤器档案。
gzip (read and write, uses zlib) bzip2 (read and write, uses bzlib) compress (read and write, uses an internal implementation) uudecode (read only) separate command-line compressors with fixed-signature auto-detection xz and lzma (read and write using liblzma) lzma (if you lack liblzma, you can get read-only lzma support through the
lzmadec库;这很可能是等liblzma稳定了就掉和将)从libchive 2.7开始,上面的大部分内容将回到使用命令行工具,如果库在构建时不可用。请注意命令行工具通常比使用库直接。
支持的归档格式
tar (read and write, including GNU extensions) pax (read and write, including GNU and star extensions) cpio (read and write, including odc and newc variants) ISO9660 (read only, including Joliet and Rockridge extensions, with
一些局限性;写的支持从libchive 2.9开始Zip(只读,有一些限制)使用zlib;写的支持从libchive 2.8开始mtree(读写)使用OpenSSL库来创建和运行验证加密散列)共享(仅写)ar(读写,包括BSD和GNU/SysV变体)空(只读;特别要注意的是,其他格式都不接受一个空文件)Raw(只读,从libchive 2.8开始)Xar(只读,从libchive 2.8开始)