Workflow zu Lese- und Schreibvorgängen in Dateien

Adobe AIR 1.0 und höher

Der Workflow zum Lesen aus und Schreiben in Dateien ist wie folgt:

Initialisieren eines File-Objekts, das auf den Pfad zeigt

Das File-Objekt repräsentiert den Pfad der Datei, mit der Sie arbeiten möchten (oder einer Datei, die Sie erst später erstellen).

var file:File = File.documentsDirectory; 
file = file.resolvePath("AIR Test/testFile.txt"); 

Im folgenden Beispiel werden die File.documentsDirectory -Eigenschaft und die resolvePath() -Methode eines File-Objekts verwendet, um das File-Objekt zu initialisieren. Allerdings gibt es viele andere Möglichkeiten, um von einem File-Objekt zu einer Datei zu verweisen. Weitere Informationen hierzu finden Sie unter Verweisen vom File-Objekt zu einer Datei .

Initialisieren eines FileStream-Objekts

Aufrufen der open()- oder openAsync()-Methode des FileStream-Objekts

Welche Methode Sie aufrufen, hängt davon ab, ob Sie die Datei für synchrone oder asynchrone Operationen verwenden wollen. Verwenden Sie das File-Objekt als den file -Parameter der open-Methode. Geben Sie für den fileMode -Parameter eine Konstante der FileMode-Klasse an, die festlegt, wie Sie die Datei einsetzen.

Der folgende Code etwa initialisiert ein FileStream-Objekt, das zum Erstellen einer Datei und zum Überschreiben etwaiger Daten eingesetzt wird:

var fileStream:FileStream = new FileStream(); 
fileStream.open(file, FileMode.WRITE); 

Weitere Informationen finden Sie unter Initialisieren von FileStream-Objekten (Öffnen und Schießen von Dateien) und Modi beim Öffnen von FileStream-Objekten .

Hinzufügen und Einrichten von Ereignis-Listenern für das FileStream-Objekt, wenn Sie die Datei asynchron geöffnet haben (mit der Methode openAsync())

Diese Ereignis-Listener-Methoden reagieren auf Ereignisse, die in verschiedenen Situationen vom FileStream-Objekt ausgelöst werden, beispielsweise wenn Daten aus der Datei gelesen werden, wenn E/A-Fehler auftreten oder wenn die Datenmenge vollständig geschrieben wurde.

Weitere Informationen finden Sie unter Asynchrone Programmierung und Ereignisse .

Gegebenenfalls Einbinden von Code zum Lesen und Schreiben von Daten

Viele Methoden der FileStream-Klasse haben mit Lese- und Schreibvorgängen zu tun. (Ihr Name beginnt immer mit „read“ oder „write“.) Welche Methode Sie zum Lesen oder Schreiben von Daten verwenden, hängt vom Format der Daten in der Zieldatei ab.

Wenn es sich bei den Daten in der Zieldatei beispielsweise um UTF-kodierten Text handelt, können Sie die Methoden readUTFBytes() und writeUTFBytes() verwenden. Wenn Sie die Daten als Byte-Arrays weiterverarbeiten wollen, können Sie die Methoden readByte() , readBytes() , writeByte() und writeBytes() verwenden. Ausführliche Informationen finden Sie unter Datenformate und die geeigneten read- und write-Methoden .

Wenn Sie die Datei asynchron geöffnet haben, stellen Sie vor dem Aufruf eine read-Methode sicher, dass genügend Daten zur Verfügung stehen. Ausführliche Informationen finden Sie unter Der Lesepuffer und die bytesAvailable-Eigenschaft .

Bevor Sie in eine Datei schreiben, können Sie anhand der spaceAvailable-Eigenschaft des File-Objekts überprüfen, wie viel Plattenspeicher zur Verfügung steht. Weitere Informationen hierzu finden Sie unter Ermitteln des auf einem Datenträger verfügbaren Speicherplatzes .

Aufrufen der close()-Methode des FileStream-Objekts, wenn die Arbeit mit der Datei abgeschlossen ist.

Durch Aufruf der close()-Methode steht die Datei anderen Anwendungen zur Verfügung.

Ausführliche Informationen hierzu finden Sie unter Initialisieren von FileStream-Objekten (Öffnen und Schießen von Dateien) .

Beispielanwendungen, in denen für das Lesen und Schreiben von Dateien die FileStream-Klasse verwendet wird, finden Sie in den folgenden Artikeln des Adobe AIR Developer Centers: