Ich wüsste nicht wie ich es näher beschreiben sollte... Um die Methoden und daher auch meinen
Ansatz für das Problem zu Erklären:
createArch wird aufgerufen und listet den Standardordner auf der angezeigt werden soll sobald auf
den
FTP zugegriffen wird. Jede Datei (filetype[]) und der dazugehörige Name(filenames[]) wird dann
in einem Array gespeichert und in eine Schleife geworfen die n mal durchläuft wobei n die Anzahl
der Dateien/Ordner ist die in dem Verzeichnis liegen. Sollte die Datei ein Ordner sein wird getData
aufgerufen, welche dann nach schaut ob in dem Verzeichnis Dateien oder weitere Ordner liegen.
Sollten weitere Ordner vorhanden sein ruft sich die Methode getData wieder selber auf und gibt
somit die komplette Baumstruktur für alle Dateien und Ordner zurück die gefunden wurden.
Um es mal streng nach meiner Ausgabe zu machen kommt damit also z.B.
0
Ordner1/
Ordner1/datei a
Ordner1/Ordner1a/
Ordner1/Ordner1a/datei b
1
Ordner2/datei c
2
datei d
heraus. Sollte jetzt aber der Fehler auftreten, bleibt das Programm willkürlich irgendwo stehen und
listet auch nichts mehr auf, so könnte das z.B. so aussehen:
0
Ordner1/
Ordner1/datei a
Ordner1/Ordner1a/
Der Fehler hat keine Logik, tritt also wie gesagt unwillkürlich auf. Mal kann es Ordner1 sein, mal
Ordner5 und mal gar nicht was natürlich ein sehr schwerer Fehler ist da das Programm später von
mehreren Menschen benutzt werden soll.
if(xyz = null)
So einfach, und doch so schwer... Danke
FtpFile...
ist eine Standardklasse von Apache Commons, wenn gewollt kann ich das ganze Programm online
stellen was aber wahrscheinlich eher für Verwirrung sorgt (selbst bei mir, die Klasse ist noch nicht
fertig und daher unstrukturiert...) und auch nicht wirklich nötig ist da das Problem lediglich in diesen
beiden Methoden liegt.