我想创建一个临时文件作为ZIP存档。第一步基本上是
File.createTempFile ("xxx", ".zip", null);
但是,现在我无法让TrueZip为此“存档”添加任何内容 - 它显然不是存档,它是一个零字节占位符文件。但是,库无法识别它,尝试读取文件并碰到EOF,当然:
Exception in thread "main" java.io.EOFException
at de.schlichtherle.truezip.rof.AbstractReadOnlyFile.readFully(AbstractReadOnlyFile.java:37)
...
我首先尝试在其上调用TFile.mkdir()
,但这会产生与TFile.cp*()
相同的异常,即TrueZip仍然不希望覆盖文件。
我当然可以先删除该文件,但这不是一个合适的解决方案,因为它会造成竞争条件。