DirectoryEntry

Dieses Objekt stellt ein Verzeichnis auf einem Dateisystem, wie durch die W3C-Verzeichnisse und Systeme -Spezifikation definiert.

Eigenschaften

  • IsFile: immer false . (boolesch)

  • IsDirectory: immer true . (boolesch)

  • Name: der Name der DirectoryEntry , ohne den Pfad zu es führen. (DOM-String und enthält)

  • FullPath: der vollständige absolute Pfad von der Wurzel an der DirectoryEntry . (DOM-String und enthält)

Hinweis: Das folgende Attribut wird durch die W3C-Spezifikation definiert, aber wird nicht unterstützt:

  • Dateisystem: das Dateisystem, auf dem der DirectoryEntry befindet. (FileSystem)

Methoden

Die folgenden Methoden aufgerufen werden können, auf ein DirectoryEntry Objekt:

  • GetMetadata: Metadaten über ein Verzeichnis nachschlagen.

  • SetMetadata: Metadaten für ein Verzeichnis festgelegt.

  • MoveTo: Verschieben Sie ein Verzeichnis an einen anderen Speicherort im Dateisystem.

  • CopyTo: Kopieren eines Verzeichnisses in einem anderen Speicherort im Dateisystem.

  • Besuch: Rückkehr eine URL zu helfen, ein Verzeichnis zu suchen.

  • Entfernen: Löschen eines Verzeichnisses. Das Verzeichnis muss leer sein.

  • GetParent: das übergeordnete Verzeichnis nachschlagen.

  • CreateReader: Erstellen Sie eine neue [DirectoryReader](../directoryreader/directoryreader.html) , die können Einträge aus dem Verzeichnis lesen.

  • GetDirectory: Erstellen oder ein Verzeichnis nachschlagen.

  • GetFile: Erstellen oder eine Datei nachschlagen.

  • RemoveRecursively: ein Verzeichnis und seinen Inhalt zu löschen.

Unterstützte Plattformen

  • Android
  • BlackBerry WebWorks (OS 5.0 und höher)
  • iOS
  • Windows Phone 7 und 8
  • Windows 8

getMetadata

Metadaten über ein Verzeichnis nachschlagen.

Parameter:

  • SuccessCallback: eine Callback-Funktion mit einem Metadata Objekt. (Funktion)

  • ErrorCallback: eine Callback-Funktion ausführen, tritt ein Fehler beim Abrufen der Metadata . Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

Function success(metadata) {console.log ("Datum der letzten Änderung:" + metadata.modificationTime);}

Function fail(error) {alert(error.code);}

/ / Anfrage das Metadatenobjekt für diesen Eintrag entry.getMetadata (Erfolg, Fehler);

setMetadata

Legt ein Verzeichnis erweiterte Attribute oder Metadaten. Funktioniert derzeit nur auf iOS.

Parameter:

  • SuccessCallback: ein Rückruf, der ausgeführt wird, wenn die Metadaten erfolgreich festgelegt ist. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, wenn die Metadaten nicht festgelegt werden. (Funktion)

  • MetadataObject: ein Objekt, das der Metadaten Schlüssel und Werte enthält. (Objekt)

Kleines Beispiel

function success() {
    console.log("The metadata was successfully set.");
}

function fail() {
    alert("There was an error in setting the metadata");
}

// Set the metadata
entry.setMetadata(success, fail, { "com.apple.MobileBackup": 1});

iOS Quirk

  • Nur die com.apple.MobileBackup erweitertes Attribut wird unterstützt. Legen Sie den Wert, um 1 zu verhindern, dass das Verzeichnis auf iCloud gesichert wird. Legen Sie den Wert auf `` , das Verzeichnis zu iCloud gesichert werden wieder zu aktivieren.

Kleines Beispiel

function setFolderMetadata(localFileSystem, subFolder, metadataKey, metadataValue)
{
    var onSetMetadataWin = function() {
        console.log("success setting metadata")
    }
    var onSetMetadataFail = function() {
        console.log("error setting metadata")
    }

    var onGetDirectoryWin = function(parent) {
        var data = {};
        data[metadataKey] = metadataValue;
        parent.setMetadata(onSetMetadataWin, onSetMetadataFail, data);
    }
    var onGetDirectoryFail = function() {
        console.log("error getting dir")
    }

    var onFSWin = function(fileSystem) {
        fileSystem.root.getDirectory(subFolder, {create: true, exclusive: false}, onGetDirectoryWin, onGetDirectoryFail);
    }

    var onFSFail = function(evt) {
        console.log(evt.target.error.code);
    }

    window.requestFileSystem(localFileSystem, 0, onFSWin, onFSFail);
}

    setFolderMetadata(LocalFileSystem.PERSISTENT, "Backups", "com.apple.MobileBackup", 1);

moveTo

Verschieben Sie ein Verzeichnis an einen anderen Speicherort im Dateisystem. Ein Fehler auftritt, wenn die app versucht:

  • Verschieben Sie ein Verzeichnis in sich selbst oder an jedes Kind in jede Tiefe.

  • Verschieben Sie ein Verzeichnis in übergeordneten, wenn ein Name unterscheidet sich von seinem aktuellen Verzeichnis nicht bereitgestellt wird.

  • Verschieben Sie ein Verzeichnis auf einen Pfad, der von einer Datei belegt.

  • Verschieben Sie ein Verzeichnis auf einen Pfad, belegt durch ein Verzeichnis, das nicht leer ist.

Verschieben eines Verzeichnisses auf einem vorhandenen leeren Verzeichnis versucht löschen und ersetzen dieses Verzeichnis.

Parameter:

  • Eltern: das übergeordnete Verzeichnis, in das Verzeichnis verschoben. (DirectoryEntry)

  • NewName: der neue Name des Verzeichnisses. Der Standardwert ist der aktuelle Name, wenn kein Wert angegeben. (DOM-String und enthält)

  • SuccessCallback: ein Rückruf, der mit führt das DirectoryEntry -Objekt für das neue Verzeichnis. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, wenn ein Fehler auftritt, wenn Sie versuchen, das Verzeichnis zu verschieben. Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

function success(entry) {
    console.log("New Path: " + entry.fullPath);
}

function fail(error) {
    alert(error.code);
}

function moveDir(entry) {
    var parent = document.getElementById('parent').value,
        parentName = parent.substring(parent.lastIndexOf('/')+1),
        newName = document.getElementById('newName').value,
        parentEntry = new DirectoryEntry(parentName, parent);

    // move the directory to a new directory and rename it
    entry.moveTo(parentEntry, newName, success, fail);
}

copyTo

Kopieren Sie ein Verzeichnis an einen anderen Speicherort im Dateisystem. Ein Fehler auftritt, wenn die app versucht:

  • Kopieren eines Verzeichnisses in sich in beliebiger Tiefe.

  • Kopieren eines Verzeichnisses in übergeordneten, wenn ein Name unterscheidet sich von seinem aktuellen Verzeichnis nicht bereitgestellt wird.

Verzeichnis-Kopien sind immer rekursive, und kopieren Sie alle Inhalte des Verzeichnisses.

Parameter:

  • Eltern: das übergeordnete Verzeichnis in das Verzeichnis kopiert. (DirectoryEntry)

  • NewName: der neue Name des Verzeichnisses. Der Standardwert ist der aktuelle Name, wenn kein Wert angegeben. (DOM-String und enthält)

  • SuccessCallback: ein Rückruf, der mit führt das DirectoryEntry -Objekt für das neue Verzeichnis. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, tritt ein Fehler beim Versuch, vom zugrunde liegenden Verzeichnis kopieren. Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

function win(entry) {
    console.log("New Path: " + entry.fullPath);
}

function fail(error) {
    alert(error.code);
}

function copyDir(entry) {
    var parent = document.getElementById('parent').value,
        parentName = parent.substring(parent.lastIndexOf('/')+1),
        newName = document.getElementById('newName').value,
        parentEntry = new DirectoryEntry(parentName, parent);

    // copy the directory to a new directory and rename it
    entry.copyTo(parentEntry, newName, success, fail);
}

Besuch

Gibt einen URL, die verwendet werden kann, um das Verzeichnis zu suchen.

Kleines Beispiel

// Get the URL for this directory
var dirURL = entry.toURL();
console.log(dirURL);

Entfernen

Löscht ein Verzeichnis. Ein Fehler auftritt, wenn die app versucht:

  • Löschen Sie ein Verzeichnis, das nicht leer ist.

  • Löschen Sie das Root-Verzeichnis des Dateisystems.

Parameter:

  • SuccessCallback: ein Rückruf, der ausgeführt wird, nachdem das Verzeichnis gelöscht wird. Ohne Parameter aufgerufen. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, wenn ein Fehler auftritt, wenn Sie versuchen, das Verzeichnis zu löschen. Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

Function success(entry) {console.log ("Entfernung erfolgreich");}

Funktion fail(error) {Alert (' Fehler beim Entfernen der Verzeichnis: ' + error.code);}

/ / Entfernen dieses Verzeichnis entry.remove (Erfolg, Fehler);

getParent

Suchen Sie den übergeordneten DirectoryEntry mit dem Verzeichnis.

Parameter:

  • SuccessCallback: ein Rückruf, der das Verzeichnis übergeordnete übergeben wird DirectoryEntry . (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, wenn ein Fehler auftritt, wenn Sie versuchen, das übergeordnete Element abrufen DirectoryEntry . Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

function success(parent) {
    console.log("Parent Name: " + parent.name);
}

function fail(error) {
    alert('Failed to get parent directory: ' + error.code);
}

// Get the parent DirectoryEntry
entry.getParent(success, fail);

createReader

Erstellt eine neue DirectoryReader um Einträge in einem Verzeichnis zu lesen.

Kleines Beispiel

// create a directory reader
var directoryReader = entry.createReader();

getDirectory

Erstellt oder ein vorhandenes Verzeichnis sucht. Ein Fehler auftritt, wenn die app versucht:

  • Erstellen Sie ein Verzeichnis, dessen unmittelbar übergeordnete noch nicht vorhanden ist.

Parameter:

  • Pfad: der Pfad zu dem Verzeichnis nachgeschlagen oder erstellt werden. Ein absoluter Pfad oder einen relativen Pfad von diesem DirectoryEntry . (DOM-String und enthält)

  • Optionen: Optionen, um anzugeben, ob das Verzeichnis erstellt werden, wenn er nicht vorhanden ist. (Flags)

  • SuccessCallback: ein Rückruf, der mit führt ein DirectoryEntry Objekt. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, tritt ein Fehler beim Erstellen oder suchen Sie das Verzeichnis. Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

Function success(dirEntry) {console.log ("Directory Name:" + dirEntry.name);}

Function fail(error) {Alert ("neues Verzeichnis erstellt:" + error.code);}

/ / Ein vorhandenes Verzeichnis abrufen oder erstellen Sie ihn, wenn es nicht bereits, entry.getDirectory vorhanden ist ("NewDir", {erstellen: echte, exklusive: False}, Erfolg, Fehler);

getFile

Erstellt oder eine Datei sucht. Ein Fehler auftritt, wenn die app versucht:

  • Erstellen Sie eine Datei, deren unmittelbar übergeordnete noch nicht vorhanden ist.

Parameter:

  • Pfad: der Pfad zu der Datei nachgeschlagen oder erstellt werden. Ein absoluter Pfad oder einen relativen Pfad von diesem DirectoryEntry . (DOM-String und enthält)

  • Optionen: Optionen, um anzugeben, ob die Datei erstellt wird, wenn es nicht vorhanden ist. (Flags)

  • SuccessCallback: ein Rückruf, der übergeben wird ein FileEntry Objekt. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, tritt ein Fehler beim Erstellen oder suchen Sie die Datei. Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

Function success(fileEntry) {console.log ("Dateiname:" + fileEntry.name);}

Function fail(error) {Alert ("Fehler beim Abrufen der Datei:" + error.code);}

/ / Abrufen eine vorhandene Datei, oder erstellen Sie ihn, wenn er nicht, entry.getFile vorhanden ist ("newFile.txt", {erstellen: echte, exklusive: False}, Erfolg, Fehler);

removeRecursively

Löscht ein Verzeichnis und seinen Inhalt. Im Falle eines Fehlers (z. B. versuchen, Löschen eines Verzeichnisses mit einer Datei, die nicht entfernt werden), können einige der den Inhalt des Verzeichnisses gelöscht werden. Ein Fehler auftritt, wenn die app versucht:

  • Löschen Sie das Root-Verzeichnis des Dateisystems.

Parameter:

  • SuccessCallback: ein Rückruf, der nach dem führt die DirectoryEntry gelöscht wurden. Ohne Parameter aufgerufen. (Funktion)

  • ErrorCallback: ein Rückruf, der ausgeführt wird, wenn ein Fehler auftritt, wenn Sie versuchen, löschen Sie die DirectoryEntry . Aufgerufene mit einem [FileError](../fileerror/fileerror.html) Objekt. (Funktion)

Kleines Beispiel

function success(parent) {
    console.log("Remove Recursively Succeeded");
}

function fail(error) {
    alert("Failed to remove directory or it's contents: " + error.code);
}

// remove the directory and all it's contents
entry.removeRecursively(success, fail);

BlackBerry Macken

Möglicherweise nicht mit einem ControlledAccessException in den folgenden Fällen:

  • Eine Anwendung versucht, ein Verzeichnis erstellt von einer vorherigen Installation der app zugreifen.

Lösung: Stellen Sie sicher, dass temporäre Verzeichnisse manuell oder durch die Anwendung vor der Neuinstallation gereinigt werden.

  • Wenn das Gerät per USB angeschlossen ist.

Lösung: Trennen Sie das USB-Kabel vom Gerät und erneut ausführen.