Wie lässt sich mit Java die Existenz einer Datei überprüfen und ggf. neu anlegen?
In der
main()
-Methode des Beispiels wird ein Objekt der Klasse gebildet und auf diesem
dann die Methode
checkFile()
aufgerufen, die die eigentliche Funktionalität enthält. Der Methode wird als
Parameter ein File-Objekt übergeben, dessen Existenz nachgeprüft werden
soll. Dies geschieht innerhalb eines try-catch-Blockes durch die Methode
createNewFile()
. Der Block fängt hierbei Ausnahmen ab, die dann geworfen werden, wenn beim
Erzeugen der Datei irgend ein Fehler auftritt. Die Methode selbst erzeugt
eine neue Datei, aber wirklich nur dann, wenn diese noch nicht existiert.
Wird sie neu erzeugt, so gibt
createNewFile() true
zurück, existiert sie bereits, wird
false
zurückgegeben.
Im gezeigten Beispiel wird von der Rückgabe jedoch kein
Gebrauch gemacht. Statt dessen wird generell geprüft, ob vor Beendigung der
Methode die Datei existiert sowie beschrieben und gelesen werden kann.
import java.io.File;
import java.io.IOException;
public class DateiErzeugen {
private static boolean checkFile(File file) {
if (file != null) {
try {
file.createNewFile();
} catch (IOException e) {
System.err.println("Error creating " + file.toString());
}
if (file.isFile() && file.canWrite() && file.canRead())
return true;
}
return false;
}
public static void main(String[] args) {
String dat = "test.txt";
if(checkFile(new File(dat)))
System.out.println(dat + " erzeugt");
}
}
Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.