是否有一种独立于平台的方式以编程方式从zip / jar中删除文件?

希望无需解压缩和重新打包存档。

是! 使用TrueZip 。

TrueZIP是一个基于Java的虚拟文件系统(VFS),它使客户端应用程序能够对存档文件执行CRUD(创建,读取,更新,删除)操作,就像它们是虚拟目录一样,即使在multithreading环境中使用嵌套存档文件也是如此。

完全理解API需要花费一些工作,但是一旦你这样做,你就会发现它可以非常容易地用于涉及压缩文件的各种任务。

看看JDK7中的Zip文件系统提供程序 ,它允许您将zip文件视为文件系统,这意味着您可以执行操作,例如移动,复制,删除,重命名等,就像使用普通文件一样。

另请参阅本文, Java 7:使用Zip文件 ,它更详细地解释了如何创建zip文件系统并对其执行各种操作。