S
Seichelm
Gast
Hallo,
bin gerade an einem Programmierbeleg und habe folgendes Problem:
Es handelt sich um ein Programm zum packen von JAR-Archiven.
Dazu werden die Dateien aus einem Ordner ausgelesen und in einer ArrayList gespeichert.
Nun habe ich das Problem, sobald ein Ordner gepackt wird, wird keine weitere Datei gepackt.
Also sind alle Dateien aus dem Ordner in dem Archiv gepackt, jedoch fehlen diejenigen, welche direkt nach dem Ordner stehen.
Kann mir jemand helfen?
Vielen Dank im vorraus!
bin gerade an einem Programmierbeleg und habe folgendes Problem:
Es handelt sich um ein Programm zum packen von JAR-Archiven.
Dazu werden die Dateien aus einem Ordner ausgelesen und in einer ArrayList gespeichert.
Java:
public void jarEintraege(String JARFile, ArrayList Files, JarOutputStream jos, byte[] buf, String inJARpath) {
try {
// Dateien werden eingelesen:
for (int i = 0; i < Files.size(); i++) {
final File f = new File((String) Files.get(i));
// Falls die Datei ein Verzeichnis ist:
if(f.isDirectory()) {
inJARpath = inJARpath + f.getName() + File.separator;
File[] files = f.listFiles();
ArrayList al = new ArrayList();
for(int a = 0; a < files.length; a ++) {
al.add(files[a].toString());
}
jarEintraege(JARFile, al, jos, buf, inJARpath);
}
else {
final FileInputStream fis = new FileInputStream(f);
// Einträge werden angelegt:
jos.putNextEntry(new JarEntry(inJARpath + entryName(f)));
// JAR-Einträge werden geschrieben:
int len;
while ((len = fis.read(buf)) >= 0) {
jos.write(buf, 0, len);
}
fis.close();
}
}
}
catch(IOException e) {}
finally{
try{
jos.close();
}
catch(IOException ex) {}
}
}
Nun habe ich das Problem, sobald ein Ordner gepackt wird, wird keine weitere Datei gepackt.
Also sind alle Dateien aus dem Ordner in dem Archiv gepackt, jedoch fehlen diejenigen, welche direkt nach dem Ordner stehen.
Kann mir jemand helfen?
Vielen Dank im vorraus!