FileSystemEntry

Das FileSystemEntry Interface der File and Directory Entries API repräsentiert einen einzelnen Eintrag in einem Dateisystem. Der Eintrag kann eine Datei oder ein Verzeichnis sein (Verzeichnisse werden durch das FileSystemDirectoryEntry Interface dargestellt). Es beinhaltet Methoden zur Arbeit mit Dateien - einschließlich Kopieren, Verschieben, Entfernen und Lesen von Dateien - sowie Informationen über eine Datei, auf die es verweist, einschließlich des Dateinamens und des Pfads vom Wurzelverzeichnis zum Eintrag.

Grundlegende Konzepte

Sie erstellen FileSystemEntry Objekte nicht direkt. Stattdessen erhalten Sie ein Objekt auf Basis dieses Interfaces über andere APIs. Dieses Interface dient als Basisklasse für die FileSystemFileEntry und FileSystemDirectoryEntry Interfaces, die spezifische Funktionen für Dateisystemeinträge, die Dateien und Verzeichnisse darstellen, bereitstellen.

Das FileSystemEntry Interface enthält Methoden, die Sie zur Manipulation von Dateien und Verzeichnissen erwarten würden, bietet aber auch eine bequeme Methode, um die URL des Eintrags zu erhalten: toURL(). Es führt auch ein neues URL-Schema ein: filesystem:.

Sie können das filesystem: Schema in Google Chrome verwenden, um alle Dateien und Ordner zu sehen, die im Ursprung Ihrer App gespeichert sind. Verwenden Sie einfach das filesystem: Schema für das Wurzelverzeichnis des Ursprungs der App. Wenn Ihre App beispielsweise unter http://www.example.com läuft, öffnen Sie filesystem:http://www.example.com/temporary/ in einem Tab. Chrome zeigt eine schreibgeschützte Liste aller Dateien und Ordner an, die im Ursprung Ihrer App gespeichert sind.

Beispiel

Um ein Beispiel dafür zu sehen, wie toURL() funktioniert, schauen Sie sich die Methodenbeschreibung an. Der folgende Ausschnitt zeigt Ihnen, wie Sie eine Datei nach Namen entfernen können.

js
// Taking care of the browser-specific prefixes.
window.requestFileSystem =
  window.requestFileSystem || window.webkitRequestFileSystem;

// …

// Opening a file system with temporary storage
window.requestFileSystem(
  TEMPORARY,
  1024 * 1024 /*1MB*/,
  (fs) => {
    fs.root.getFile(
      "log.txt",
      {},
      (fileEntry) => {
        fileEntry.remove(() => {
          console.log("File removed.");
        }, onError);
      },
      onError,
    );
  },
  onError,
);

Instanz-Eigenschaften

Dieses Interface bietet die folgenden Eigenschaften.

filesystem Schreibgeschützt

Ein FileSystem Objekt, das das Dateisystem repräsentiert, in dem sich der Eintrag befindet.

fullPath Schreibgeschützt

Ein String, der den vollständigen, absoluten Pfad vom Wurzelverzeichnis des Dateisystems zum Eintrag bereitstellt; er kann auch als Pfad relativ zum Wurzelverzeichnis betrachtet werden, dem ein "/" Zeichen vorangestellt ist.

isDirectory Schreibgeschützt

Ein boolescher Wert, der true ist, wenn der Eintrag ein Verzeichnis darstellt; andernfalls ist er false.

isFile Schreibgeschützt

Ein Boolean, der true ist, wenn der Eintrag eine Datei darstellt. Wenn es keine Datei ist, ist dieser Wert false.

name Schreibgeschützt

Ein String, der den Namen des Eintrags enthält (der letzte Teil des Pfads, nach dem letzten "/" Zeichen).

Instanz-Methoden

Dieses Interface definiert die folgenden Methoden.

copyTo() Veraltet Nicht standardisiert

Kopiert die Datei oder das Verzeichnis an einen neuen Ort im Dateisystem.

getMetadata() Veraltet Nicht standardisiert

Ruft Metadaten über die Datei ab, wie zum Beispiel das Änderungsdatum und die Größe.

getParent()

Gibt ein FileSystemDirectoryEntry zurück, das das übergeordnete Verzeichnis des Eintrags repräsentiert.

moveTo() Veraltet Nicht standardisiert

Verschiebt die Datei oder das Verzeichnis an einen neuen Ort im Dateisystem oder benennt die Datei oder das Verzeichnis um.

remove() Veraltet Nicht standardisiert

Entfernt die angegebene Datei oder das Verzeichnis. Sie können nur Verzeichnisse entfernen, die leer sind.

toURL() Veraltet Nicht standardisiert

Erstellt und gibt eine URL zurück, die den Eintrag identifiziert. Diese URL verwendet das URL-Schema "filesystem:".

Spezifikationen

Specification
File and Directory Entries API
# api-entry

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch