我想用Java创建一个tar归档文件。我有不断创建的文件,我希望工作线程从队列中引用这些文件并将其复制到存档中。
我尝试使用Apache Compression库的TarArchiveOutputStream来执行此操作,但是我不希望在程序的整个过程中都保持归档处于打开状态(因为除非最终确定归档文件,否则它可能会损坏- 因此,我宁愿将其追加到批处理),而我还没有找到一种很好的方法来通过其库将其附加到现有的tar归档文件中(它们确实具有“ ChangeSetPerformer”类,但它基本上只是创建了一个新的tar,需要完全复制旧的tar,在性能方面对我不利)。
我还需要该库对归档文件的大小没有限制(即4g左右是不够的),我宁愿避免不得不实际压缩该归档文件。
任何建议将不胜感激!谢谢。
您在这里以tar限制运行:http : //en.wikipedia.org/wiki/Tar_(file_format)#Random_access
因此,不复制整个档案就很难添加或删除单个文件。