Java: In welchem Format Datei speichern und wie?

1 Antwort

Die Files-Klasse beherbergt einige nützliche Methoden für deine Anforderungen.

Beim Schreiben der CSV-Datei kannst du dir mit der createDirectories-Methode einen Ordner anlegen lassen. Wenn der Ordner bereits existiert, passiert nichts. Wenn die Oberverzeichnisse noch nicht existieren, werden sie erst angelegt.

Path path = Paths.get("/path/to/new/directory");
Files.createDirectories(path);

Mit der move-Methode gelingt eine Verschiebung von Dateien in einen anderen Pfad. Iteriere einfach durch alle Einträge der CSV-Datenstruktur und wende je Eintrag die genannte Methode an.

Das Problem ist das die Bilder gelöscht werden können und die Bild-Pfade werden nicht mehr stimmen.

Löschen kann der Nutzer die Bilder jederzeit nach Belieben und da dein Programm nur verweisende Pfade speichert, lässt es sich nicht so ganz verhindern, dass ein Pfad auch mal auf ein nicht existentes Bild verweist.

Beim Verschiebevorgang kannst du zumindest (mit exists) erst prüfen, ob die Datei noch existiert. So eine Abfrage solltest du ebenso für die Anwendungsfälle einbauen, bei denen dein Programm möglicherweise nochmal auf eine konkrete Datei zugreift.