调用Enumeration的nextElement时出错

时间:2016-07-13 20:13:31

标签: java jar enumeration

我正在尝试将文件添加到.jar文件中 我的问题是JarOutputStream旧的.jar文件被覆盖。

所以我创建了这段代码:

Enumeration<JarEntry> enu = game.entries()
while(enu.hasMoreElements()){
    File f = doThing(game.getInputStream(enu.nextElement()));
    add(f,os);
}

游戏是JarFile add(File, JarOutputStream)JarOutputStream添加了一个文件,osJarOutputStream

但是,如果我尝试这个代码,我会收到此错误:

Exception in thread "AWT-EventQueue-0" java.util.zip.ZipError: jzentry == 0,
 jzfile = 576741376,
 total = 57,
 name = C:\Users\Jorolf\Desktop\XXX.jar,
 i = 1,
 message = null

(我在调用enu.nextElement()时遇到错误)

编辑:
我正在同时读取和写入同一个文件,所以我更改了它,所以我写了一个临时文件,然后用临时文件替换旧文件。

0 个答案:

没有答案