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 enthält Methoden zum Arbeiten mit Dateien – einschließlich Kopieren, Verschieben, Entfernen und Lesen von Dateien – sowie Informationen über eine Datei, auf die es zeigt – einschließlich des Dateinamens und seines Pfads vom Root-Verzeichnis bis zum Eintrag.
Grundlegende Konzepte
FileSystemEntry
-Objekte werden nicht direkt erstellt. Stattdessen erhalten Sie ein Objekt, das auf diesem Interface basiert, über andere APIs. Dieses Interface dient als Basisklasse für die FileSystemFileEntry
und FileSystemDirectoryEntry
-Interfaces, die spezifische Funktionen für Dateisystemeinträge bieten, die Dateien bzw. Verzeichnisse darstellen.
Das FileSystemEntry
-Interface enthält Methoden, die Sie erwarten würden, um Dateien und Verzeichnisse zu manipulieren, bietet aber auch eine praktische 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 Root-Verzeichnis des Ursprungs der App. Wenn Ihre App z.B. auf 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, siehe die Methodenbeschreibung. Der folgende Codeausschnitt zeigt, wie Sie eine Datei anhand des Namens entfernen können.
// 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 Root-Verzeichnis des Dateisystems zum Eintrag bereitstellt; er kann auch als ein Pfad betrachtet werden, der relativ zum Root-Verzeichnis ist und mit einem "/"-Zeichen versehen ist.
isDirectory
Schreibgeschützt-
Ein boolean-Wert, der
true
ist, wenn der Eintrag ein Verzeichnis darstellt; ansonsten ist erfalse
. isFile
Schreibgeschützt-
Ein Boolean, der
true
ist, wenn der Eintrag eine Datei darstellt. Wenn es keine Datei ist, ist dieser Wertfalse
. 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 Standort im Dateisystem.
getMetadata()
Veraltet Nicht standardisiert-
Ruft Metadaten der Datei ab, wie z.B. 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
Siehe auch
- File and Directory Entries API
FileSystemFileEntry
undFileSystemDirectoryEntry
basieren aufFileSystemEntry
.