Eclipse FileTreeWalker

xxxvietxxx

Mitglied
Java:
import java.io.File;
import java.io.IOException;
class FileTreeWalker {
public static void main(String[] args) throws IOException {
new FileTreeWalker().walk(args[0]);
}
void walk(String pathname) throws IOException {
// hole alle Verzeichnis-Eintraege von pathname
File[] files = new File(pathname).listFiles();
if(files != null)
for(File file: files)
if(file.isDirectory())
// rufe walk() mit jedem Unterverzeichnis
// von pathname
walk(file.getCanonicalPath());
else
// rufe process() mit jeder Datei,
// die kein Verzeichnis ist
process(file.getCanonicalPath(), (int)file.length());
}
void process(String name, int length) {
// gib Namen und Länge der Datei aus
System.out.printf("%-70s%9d%n", name, length);
}
}

warum liefert er mir hier "Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at FileTreeWalker.main(FileTreeWalker.java:5)
"???

Das Programm “FileTreeWalker” durchläuft rekursiv mit der Methode
“walk()” ab dem in der Kommandozeile übergebenen Verzeichnis den Verzeichnisbaum
und verarbeitet dabei alle Dateien mit der Methode “process()”,
die hier einfach den Namen und die Dateilänge ausgibt.
Brauche unbedingt hilfe danke im vorraus
 

eRaaaa

Top Contributor
Weil dann args-Array evtl. die Größe 0 hat und nicht 1 ? :)
Wie rufst du denn das Programm auf! Du musst das Verzeichnis angeben!

Code:
java FileTreeWalker PfadZumVerzeichnis
 

xxxvietxxx

Mitglied
Ich wälze mich schon durch,doch viele Sachen verstehe ich halt nicht :(
Ich habe den Code mit Eclipse aufgemacht und versuche ihne gerade zum bringen , was ich aber leider wie ihr seht net schaffe ...
 

eRaaaa

Top Contributor
In Eclipse kannst du dies in den "Run Configurations" einstellen

Run -> Run Configurations... --> rechts bei den Tabs Arguments auswählen und bei Program arguments dann den Pfad reinschreiben !
 

XHelp

Top Contributor
In Eclipse kannst du in der Run Configuration die Kommandozeilenparameter angeben.

Vermutlich wälzt du dich zu schnell durch oder durch eine falsche Lektüre
 

xxxvietxxx

Mitglied
zu schnell durchwälzen bestimmt stehe nämlich ziemlich unter zeitdruck und falsche lektüre weiss ich nicht lese "Java-Grundkurs für Wirtschaftsinformatiker".
 

Neue Themen


Oben