當您開啟 FileStream 物件時,這個物件就可以對檔案執行讀取和寫入作業。您可以將 File 物件傳遞給 FileStream 物件的
open()
或
openAsync()
方法,以開啟這個 FileStream 物件。
var myFile:File = File.documentsDirectory.resolvePath("AIR Test/test.txt");
var myFileStream:FileStream = new FileStream();
myFileStream.open(myFile, FileMode.READ);
fileMode
參數 (
open()
和
openAsync()
方法的第二個參數) 會指定檔案的開啟模式:可供讀取、寫入、附加或更新。如需詳細資訊,請參閱上一節:
FileStream 開啟模式
。
如果您是使用
openAsync()
方法開啟檔案以執行非同步檔案作業,請設定事件偵聽程式以處理非同步事件:
var myFile:File = File.documentsDirectory.resolvePath("AIR Test/test.txt");
var myFileStream:FileStream = new FileStream();
myFileStream.addEventListener(Event.COMPLETE, completeHandler);
myFileStream.addEventListener(ProgressEvent.PROGRESS, progressHandler);
myFileStream.addEventListener(IOErrorEvent.IO_Error, errorHandler);
myFileStream.openAsync(myFile, FileMode.READ);
function completeHandler(event:Event):void {
// ...
}
function progressHandler(event:ProgressEvent):void {
// ...
}
function errorHandler(event:IOErrorEvent):void {
// ...
}
視您使用
open()
或
openAsync()
方法而定,檔案開啟時可供同步或非同步作業。如需詳細資訊,請參閱:
AIR 檔的基本概念
。
如果您在 FileStream 物件的開啟方法中,將
fileMode
參數設定為
FileMode.READ
或
FileMode.UPDATE
,那麼當您一開啟 FileStream 物件,就會將資料讀取至讀取緩衝區中。如需詳細資訊,請參閱
讀取緩衝區和 FileStream 物件的 bytesAvailable 屬性
。
您可以呼叫 FileStream 物件的
close()
方法關閉相關聯的檔案,讓其它應用程式可以使用這個檔案。