Verzeichnisse und Pfade verwalten

Ein-/Ausgabe und Streams in Java

Alex Liu

Software Developer Engineer

Zentrales Konzept

  • Verzeichnisse organisieren Dateien und Daten
  • Pfade geben Speicherorte von Dateien und Verzeichnissen an
  • Die Klasse File kann eine Datei oder ein Verzeichnis darstellen
    • Die tatsächliche Ressource hängt von der Methode ab (mkdir() für Verzeichnisse, createNewFile() für Dateien)

Computermonitor mit mehreren Verzeichnissymbolen

Ein-/Ausgabe und Streams in Java

Verzeichnisse erstellen

  • Importiere die Klasse File
    import java.io.File;
    
  • Erstellt ein File-Objekt für das Verzeichnis
    File newDirectory = new File("myDirectory");
    
  • Mit .mkdir() wird das Verzeichnis im Dateisystem angelegt
    boolean created = newDirectory.mkdir();
    
  • Gibt true zurück, wenn das Verzeichnis erfolgreich erstellt wurde
  • Gibt false zurück, wenn es bereits existiert oder nicht erstellt werden kann
Ein-/Ausgabe und Streams in Java

Dateien in einem Verzeichnis auflisten

  • Verwende .listFiles(), um Dateien im Verzeichnis aufzulisten

$$

// Erstellt ein `File`-Objekt für das Verzeichnis `myDirectory`
File dir = new File("myDirectory");
// Ruft ein `array` von `File`-Objekten für den Inhalt von `myDirectory` ab
File[] files = dir.listFiles();
  • Gibt ein array von File-Objekten zurück, wenn das Verzeichnis existiert
  • Gibt null zurück, wenn das Verzeichnis nicht existiert
Ein-/Ausgabe und Streams in Java

Relativen Pfad einer Datei abrufen

  • Relativer Pfad: Speicherort einer Datei/eines Verzeichnisses relativ zum aktuellen Arbeitsverzeichnis
// Erstellt ein `File`-Objekt für `sample.txt` in `myDirectory`
File file = new File("myDirectory/sample.txt");
// Ruft den relativen Pfad der Datei als String ab
String path = file.getPath();
System.out.println(path);
  • Wir nehmen an, myDirectory existiert bereits; sonst schlägt Erstellen oder Schreiben fehl

  • Ausgabe:

    myDirectory/sample.txt
    
Ein-/Ausgabe und Streams in Java

Mit absoluten Pfaden arbeiten

  • Absoluter Pfad: der vollständige Pfad vom Root des Dateisystems

$$

// Erstellt ein `File`-Objekt für `sample.txt` in `myDirectory`
File file = new File("myDirectory/sample.txt");
// Ruft den absoluten Pfad der Datei als String ab
String absPath = file.getAbsolutePath();
System.out.println(absPath);
  • Ausgabe:
/user/home/myDirectory/sample.txt
Ein-/Ausgabe und Streams in Java

Lass uns üben!

Ein-/Ausgabe und Streams in Java

Preparing Video For Download...