Adobe Air (wiwobooks.com Release)
mithilfe der Instanzeigenschaft nativePath abrufen. Die resultierende File -Instanz können Sie verwenden wie jede andere auch.
Lösungsweg
Aufruf der statischen File -Methode createTempDirectory()
So geht es
Im folgenden Quelltextabschnitt wird zuerst ein temporäres Verzeichnis erstellt, dessen nativer Pfad in der Konsole ausgegeben und anschließend wieder gelöscht wird:
import flash.filesystem.File;
var tempDir:File = File.createTempDirectory(); trace(tempDir.nativePath);
tempDir.deleteDirectory();
12.3.10 Datei löschen
Sie können neben Verzeichnissen natürlich auch Dateien löschen. Auch hier müssen Sie zu einem derartigen Zugriff berechtigt sein. Analog zu den Methoden zum Löschen von Verzeichnissen heißen die Methoden zum Löschen von Dateien deleteFile() und deleteFileAsync().
Lösungsweg
1. Erstellen einer File -Instanz für die zu löschende Datei
2. Aufruf der Methode deleteFile() bzw . deleteFileAsync() für synchrones bzw. asynchrones Löschen der Datei
So geht es
Mit dem nachfolgenden Quelltextabschnitt löschen Sie eine Datei myFile.txt im Anwendungs-Dokumentenverzeichnis:
import flash.filesystem.File;
var appStorDir:File = File.applicationStorageDirectory;
var myFile:File = appStorDir.resolvePath("myFile.txt");
if(myFile.exists) {
myFile.deleteFile();
}
12.3.11 Datei oder Verzeichnis in Papierkorb verschieben
Anstatt eine Datei oder ein Verzeichnis zu löschen, können Sie sie auch in den Systempapierkorb verschieben. Die File -Klasse stellt zu diesem Zweck die Methoden moveToTrash() bzw . moveToTrashAsync() zur Verfügung.
Lösungsweg
1. File -Referenz für zu verschiebende Datei erstellen
2. Aufruf der Methode moveToTrash() bzw. moveToTrashAsync() für synchrones bzw. asynchrones Verschieben in den Papierkorb
So geht es
Der folgende Quelltextabschnitt bewirkt das Verschieben eines Verzeichnisses myDir im Anwendungs-Dokumentenverzeichnis in den Systempapierkorb:
import flash.filesystem.File;
var appStorDir:File = File.applicationStorageDirectory;
var myDir:File = appStorDir.resolvePath("myDir");
if(myDir.exists) {
myDir.moveToTrash();
}
12.3.12 Datei oder Verzeichnis verschieben
Sie können nicht nur Dateien oder Verzeichnisse in den Papierkorb verschieben, sondern auch an jeden anderen Ort, auf den der Benutzer Ihrer Anwendung zugreifen darf. Die dafür zu verwendenden Methoden der File -Klasse heißen moveTo() und moveToAsync() . Bei einer Verschieben-Operation sind zwei File -Objekte beteiligt: eines für die Datei oder das Verzeichnis, das verschoben wird, und eines, das für die neue Ressource steht, also das Ziel der Operation. Der Zeiger auf die Zielressource wird der moveTo() - bzw. moveToAsync() -Methode der Quellressource als erster Parameter übergeben, als zweiter Parameter kann ein boolscher Wert übergeben werden, der angibt, ob die Zielressource überschrieben werden soll, wenn sie bereits vorhanden ist.
Lösungsweg
1. Erstellen einer File -Instanz für die zu verschiebende Ressource
2. Erstellen einer File -Instanz für die Zielressource
3. Aufruf der moveTo() - bzw. moveToAsync() -Methode der Quellressource für synchrones bzw. asynchrones Verschieben, der die Zielressource als erster Parameter übergeben wird.
Der optionale zweite Parameter overwrite gibt an, ob der Zielinhalt überschrieben werden soll, falls er schon existiert
Stolperfallen/Caveats
AIR weicht in seinem Verhalten beim Überschreiben von Verzeichnissen vom erwarteten Verhalten ab: Das bereits bestehende Verzeichnis wird zuerst gelöscht, anschließend das Quellverzeichnis verschoben. Andere bereits im Zielverzeichnis vorhandene Dateien gehen bei diesem Vorgang verloren. Wenn Sie also damit rechnen müssen, dass das Zielverzeichnis zum Zeitpunkt der Verschieben-Operation weitere Daten enthält, sollten Sie das zu verschiebende Verzeichnis iterativ durchlaufen und die Dateien einzeln verschieben. So können Sie Datenbestände zusammenführen und genau steuern, wann eine bestehende Datei übersprungen oder überschrieben wird. Ferner können Pfade unter Windows nicht länger als 255 Zeichen sein. Rechnen Sie damit, dass dieses Limit bei stark verschachtelter Verzeichnisstruktur und langen Dateinamen überschritten werden könnte.
So geht es
Der nachfolgende Quelltextabschnitt verdeutlicht das synchrone Verschieben des Verzeichnisses myDir vom Anwendungs-Dokumentenverzeichnis in das Benutzerverzeichnis:
import flash.filesystem.File;
import flash.errors.IOError;
var myDir:File =
Weitere Kostenlose Bücher