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: