FileSystemFileEntry: file() Methode

Die Methode file() des FileSystemFileEntry-Interfaces gibt ein File-Objekt zurück, das verwendet werden kann, um Daten aus der durch den Verzeichniseintrag dargestellten Datei zu lesen.

Syntax

js
file(successCallback)
file(successCallback, errorCallback)

Parameter

successCallback

Eine Callback-Funktion, die aufgerufen wird, wenn die File erfolgreich erstellt wurde; die File wird der Callback-Funktion als einziger Parameter übergeben.

errorCallback Optional

Falls angegeben, muss dies eine Methode sein, die aufgerufen wird, wenn ein Fehler beim Versuch, die File zu erstellen, auftritt. Dieser Callback erhält ein DOMException-Objekt als Eingabe, welches den Fehler beschreibt.

Rückgabewert

Keiner (undefined).

Beispiele

Dieses Beispiel etabliert eine Methode readFile(), die eine Textdatei liest und eine angegebene Callback-Funktion mit dem empfangenen Text (als Zeichenkette) aufruft, sobald das Lesen abgeschlossen ist. Falls ein Fehler auftritt, wird eine angegebene (optionale) Fehler-Callback-Funktion aufgerufen.

js
function readFile(entry, successCallback, errorCallback) {
  entry.file((file) => {
    let reader = new FileReader();

    reader.onload = () => {
      successCallback(reader.result);
    };

    reader.onerror = () => {
      errorCallback(reader.error);
    };

    reader.readAsText(file);
  }, errorCallback);
}

Diese Funktion ruft file() auf und spezifiziert als Erfolgs-Callback eine Methode, die anschließend einen FileReader verwendet, um die Datei als Text zu lesen. Der load-Ereignishandler des FileReaders wird eingerichtet, um die geladene Zeichenkette an den bei Aufruf der readFile()-Methode angegebenen successCallback zu liefern; ebenso wird sein error-Handler eingerichtet, um den angegebenen errorCallback aufzurufen.

Spezifikationen

Specification
File and Directory Entries API
# dom-filesystemfileentry-file

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch