Java Reference
In-Depth Information
Mit den ersten beiden Anweisungen werden die beiden ListModels geleert, damit bei
mehrmaligem Betätigen der Schaltfläche die Einträge des aktuell auszulesenden Ver-
zeichnisses nicht an die Verzeichnis- bzw. Dateiliste des vorhergehenden Vorganges
angehängt werden.
Nur wenn im Textfeld ein Verzeichnisname eingetragen ist, soll eine Auswertung erfol-
gen. Dies stellen Sie mit der folgenden if -Anweisung sicher. Ist ein Verzeichnisname
angegeben, wird das File -Objekt mit dem Namen verzeichnis erzeugt. Mit der Methode
exists() wird geprüft, ob das Verzeichnis im Dateisystem existiert. Ist dies der Fall,
kann die Auswertung erfolgen.
Für die Auswertung wird ein lokales String-Array mit dem Namen inhalt durch Aufruf
der Methode list() des File -Objekts mit den Namen der Verzeichnisse und Dateien
gefüllt.
String[] inhalt = verzeichnis.list();
12
In einer foreach -Schleife können daraufhin die Einträge abgearbeitet werden. Um über-
prüfen zu können, ob der jeweilige Eintrag in die Verzeichnis- oder in die Dateiliste ein-
getragen werden muss, muss zu jedem Eintrag ein File -Objekt erstellt werden. Die
Methode isDirectory() dieses Objekts liefert das Entscheidungskriterium für die kor-
rekte Zuordnung.
for (String eintrag: inhalt) {
File f=new File(verzeichnis, eintrag);
if (f.isDirectory()) {
jListVerzeichnisseModel.addElement(eintrag);
}else{
jListDateienModel.addElement(eintrag);
}
}
Listing 12.2 foreach-Schleife zur Prüfung auf Datei oder Verzeichnis
Zu beachten ist, dass das File -Objekt in der foreach -Schleife mit dem Konstruktor, der
Verzeichnisname und Dateiname als Parameter erwartet, erstellt wird. Nur so entspre-
chen die erzeugten File -Objekte den Einträgen, des eingelesenen Verzeichnisses, und
die Methode isDirectory() liefert korrekte Ergebnisse. Werden die File -Objekte nur
mit den Dateinamen erzeugt, haben sie keine Entsprechung im Dateisystem, und die
Methoden isFile() und isDirectory() liefern immer true zurück, weil die Dateien
nicht existieren.
Search WWH ::




Custom Search