Adobe Air (wiwobooks.com Release)
Dokumentenverzeichnis Eigene Dateien und befindet sich unter C:/Dokumente und Einstellungen/Benutzername/Eigene Dateien/.
Linux
Unter Linux finden Sie das Verzeichnis unter /home/Benutzername/Documents.
12.2.7 Verfügbare Root-Verzeichnisse bzw. Laufwerke finden
Für den Fall, dass Sie alle Verzeichnisse der höchsten Ebene finden wollen, stellt die File-Klasse die statische Methode getRootDirectories() bereit.
Lösungsweg
1. Aufruf der statischen Methode getRootDirectories()
2. Gegebenenfalls Durchlauf des Arrays für die File-Instanzen der einzelnen Laufwerke (Windows) bzw. des Wurzelverzeichnisses (Mac OS X/Linux)
Stolperfallen/Caveats
Auf Linux und Mac OS X ist das Wurzelverzeichnis stets das Root-Verzeichnis »/«. Wenn Sie unter Mac OS X eine Liste der verfügbaren Laufwerke abrufen wollen, verwenden Sie stattdessen die Methode getDirectoryListing() einer File - Instanz für das Verzeichnis /Volumes.
So geht es
So bekommen Sie Referenzen auf die Laufwerke (Windows) bzw. das Wurzelverzeichnis (Mac OS X/Linux) des Benutzerrechners:
import flash.filesystem.File;
var rootDirs:Array = File.getRootDirectories();
for(var i:uint = 0; i < rootDirs.length; i++) {
var rootDir:File = rootDirs[i];
// weiterer Quelltext, der etwas mit rootDir anstellt // (hier nicht angezeigt)
}
Mit folgendem kurzen Flex-Listing können Sie sich die vordefinierten Ressourcen für Ihr Betriebssystem anzeigen lassen:
Listing 12.1 Beispiel: Anzeige der vordefinierten AIR-Ressourcen
Abbildung 12.1 zeigt die entsprechende Anwendung am Beispiel von Mac OS X. Abbildung 12.1 Vordefinierte Ressourcen einer Anwendung unter Mac OS X
12.3 File-Objekte
Nachdem Sie die vordefinierten Ressourcen der File -Klasse kennengelernt haben, erfahren Sie nun mehr über die Verwendung von File -Instanzen. Die File - Klasse ist eine Erweiterung der Klasse FileReference des Pakets flash.net , die im Flash Player für Upload- und Download-Funktionalität zur Verfügung steht. Sie können die File -Klasse oder File -Instanzen dazu verwenden, um Verzeichnisse und Dateien zu löschen bzw. zu verschieben oder zu kopieren, temporäre Dateien zu erstellen, Inhalte von Verzeichnissen aufzulisten oder die Pfade zu vordefinierten Ressourcen abzurufen. Ein Aspekt, der zu Beginn vielleicht etwas schwer zu (be-)greifen ist, ist die Tatsache, dass eine File -Instanz noch nicht eine tatsächlich vorhandene Ressource darstellt, sondern lediglich eine Art Zeiger auf diese Ressource darstellt. Die File -Klasse stellt für viele ihrer Methoden jeweils eine synchrone und eine asynchrone Variante zur Verfügung. Tabelle 12.3 liefert einen Überblick über diese Methoden.
synchron copyTo()
asynchron
copyToAsync()
deleteDirectory() deleteDirectoryAsync()
deleteFile() deleteFileAsync()
getDirectoryListing()
moveTo()
getDirectoryListingAsync()
moveToAsync()
moveToTrash() moveToTrashAsync()
Funktion
Kopieren der Ressource an einen anderen Ort
Verzeichnis löschen
Datei löschen
liefert eine Liste von enthaltenen Dateien und Verzeichnissen Verschieben der Ressource an einen anderen Ort
Verschieben der Ressource in den Papierkorb des Betriebssystems Tabelle 12.3 Synchrone und asynchrone Methoden der File-Klasse
12.3.1 File-Objekt erstellen
Sie können eine File-Instanz ganz einfach mit dem Klassenkonstruktor erstellen: var myFile:File = new File();
Ohne Parameter haben Sie sodann eine File-Instanz, die noch nicht auf eine Dateisystemressource verweist. Wenn Sie als Parameter des Konstruktors den nativen Pfad als Zeichenkette angeben, haben Sie deswegen jedoch noch keine
Weitere Kostenlose Bücher