Flujo de trabajo de lectura y escritura de archivos

Adobe AIR 1.0 y posterior

El flujo de trabajo para la lectura y escritura de archivos es el siguiente.

Inicialice un objeto File que apunte a la ruta.

El objeto File representa la ruta del archivo con la que se desea trabajar (o un archivo que se va a crear).

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

En este ejemplo se utiliza la propiedad File.documentsDirectory y el método resolvePath() de un objeto File para inicializar el objeto File. Existen también varias formas más de configurar un objeto File para que apunte a un archivo. Para obtener más información, consulte Configuración de un objeto File para que apunte a un archivo .

Inicialice un objeto FileStream.

Llame al método open() u openAsync() del objeto FileStream.

El método que se llame dependerá de si se desea abrir el archivo para realizar operaciones sincrónicas o asíncronas. Utilice el objeto File como parámetro file del método open. Para el parámetro fileMode , indique una constante de la clase FileMode que especifique la forma en que se utilizará el archivo.

En el ejemplo siguiente, el código inicializa un objeto FileStream que se utiliza para crear un archivo y sobrescribir los datos existentes:

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

Para obtener más información, consulte Inicialización de un objeto FileStream, y apertura y cierre de archivos y Modos de apertura de FileStream .

Si abrió el archivo de forma asíncrona (con el método openAsync()), añada y configure detectores de eventos para el objeto FileStream.

Estos métodos de detección de eventos responden a eventos distribuidos por el objeto FileStream en distintas situaciones. Entre estas situaciones se incluyen el momento en que los datos se leen desde el archivo, cuando se detectan errores de E/S o cuando se ha escrito la cantidad total de datos que se debe escribir.

Para obtener más información, consulte Programación asíncrona y eventos generados por un objeto FileStream abierto de forma asíncrona .

Incluya código para leer y escribir datos, según proceda.

Existen varios métodos de la clase FileStream relacionados con la lectura y la escritura. (Cada uno empieza con "read" o "write"). El método que se elija para leer o escribir datos depende del formato de los datos en el archivo de destino.

Por ejemplo, si el contenido del archivo de destino es texto codificado en UTF, se pueden utilizar los métodos readUTFBytes() y writeUTFBytes() . Si se desea tratar los datos como conjuntos de bytes, se pueden utilizar los métodos readByte() , readBytes() , writeByte() y writeBytes() . Para obtener más información, consulte Formatos de datos y elección de los métodos de lectura y escritura .

Si abrió el archivo de forma asíncrona, asegúrese de que disponga de suficientes datos antes de llamar a un método de lectura. Para obtener más información, consulte Búfer de lectura y propiedad bytesAvailable de un objeto FileStream .

Antes de escribir en un archivo, si se desea comprobar la cantidad de espacio disponible en el disco se puede comprobar la propiedad spaceAvailable del objeto File. Para obtener más información, consulte Determinación del espacio disponible en un volumen .

Llame al método close() del objeto FileStream cuando haya terminado de trabajar con el archivo.

La llamada al método close() hace que el archivo esté disponible para las demás aplicaciones.

Para obtener más información, consulte Inicialización de un objeto FileStream, y apertura y cierre de archivos .

Para ver una aplicación de muestra que utiliza la clase FileStream para leer y escribir archivos, consulte los artículos siguientes en el centro de desarrollo de Adobe AIR: