用于TAR归档和取消归档文件的Cocoa类

时间:2011-05-30 19:17:41

标签: objective-c cocoa

是否有人围绕tar归档/取消归档文件编写了一个简单的Cocoa包装类?

我打算自己做,除非那里有人已经慷慨地完成了它。

编辑:有什么理由我不应该围绕“tar”终端命令编写一个包装类吗? (通过NSTask)?除非有任何异议,否则这就是我现在计划做的事情。

2 个答案:

答案 0 :(得分:2)

在此之前(至少是取消归档),我建议您查看The Unarchiver的来源。
它支持Zip,Tar-GZip,Tar-BZip2,RAR,7-zip,LhA,StuffIt等。


另外,对于完整的归档/取消归档支持,还有 libarchive
这是BSD许可并用C编写:http://code.google.com/p/libarchive/
(在 iOS 中使用 libarchive static library分叉

  

过滤支持

     
      
  • gzip(读写,使用zlib)
  •   
  • bzip2(读写,使用bzlib)
  •   
  • compress(读写,使用内部实现)
  •   
  • uudecode(只读)
  •   
  • 具有固定签名自动检测的独立命令行压缩器
  •   
  • xz和lzma(使用liblzma读写)
  •   
  • lzma(如果你缺少liblzma,你可以通过它获得只读的lzma支持   lzmadec图书馆;这很可能会   liblzma稳定后立即下降   并广泛提供)
  •   
  • 从libarchive 2.7开始,上述大部分内容将重新使用   命令行工具,如果库   在构建时不可用。注意   命令行工具是   通常比使用慢   图书馆直接。
  •   
     

支持的存档格式

     
      
  • tar(读写,包括GNU扩展)
  •   
  • pax(读写,包括GNU和星级扩展)
  •   
  • cpio(读写,包括odc和newc变体)
  •   
  • ISO9660(只读,包括Joliet和Rockridge扩展,带有   一些限制;写支持   从libarchive 2.9开始)
  •   
  • Zip(只读,有一些限制,使用zlib;写支持   从libarchive 2.8开始)
  •   
  • mtree(读写,使用OpenSSL库进行创建和验证   加密哈希)
  •   
  • shar(只写)
  •   
  • ar(读写,包括BSD和GNU / SysV变体)
  •   
  • 空(只读;特别注意,没有其他格式可以接受   一个空文件)
  •   
  • raw(只读,从libarchive 2.8开始)
  •   
  • xar(只读,从libarchive 2.8开始)
  •   

仅供记录:Apple private API rejection with libarchive(问题已解决,顺便说一句)

答案 1 :(得分:1)