Flux de travail pour la lecture et l’écriture de fichiers

Adobe AIR 1.0 et les versions ultérieures

Le flux de travail de lecture et d’écriture de fichier est décrit ci-après.

Initialisez un objet File pointant vers le chemin.

Cet objet File représente le chemin du fichier que vous souhaitez utiliser (ou d’un fichier que vous créerez ultérieurement).

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

Cet exemple utilise la propriété File.documentsDirectory et la méthode resolvePath() d’un objet File pour initialiser celui-ci. Toutefois, vous pouvez pointer un objet File vers un fichier de plusieurs autres façons. Pour plus d’informations, voir la section Pointage d’un objet File vers un fichier .

Initialisez un objet FileStream.

Appelez la méthode open() ou openAsync() de l’objet FileStream.

La méthode que vous appelez varie selon que vous souhaitez ouvrir le fichier en mode synchrone ou asynchrone. Utilisez l’objet File comme paramètre file de la méthode open. Pour le paramètre fileMode , spécifiez une constante de la classe FileMode qui définit le mode d’utilisation du fichier.

Par exemple, le code suivant initialise un objet FileStream utilisé pour créer un fichier et, éventuellement, remplacer les données existantes :

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

Pour plus d’informations, voir les sections Initialisation d’un objet FileStream et ouverture et fermeture de fichiers et Modes d’ouverture FileStream .

Si vous avez ouvert le fichier en mode asynchrone (à l’aide de la méthode openAsync()), ajoutez et définissez des écouteurs d’événement pour l’objet FileStream.

Ces méthodes d’écouteurs d’événements réagissent aux événements distribués par l’objet FileStream dans divers cas de figure. Parmi ces cas de figure figurent notamment la lecture de données dans le fichier, la génération d’erreurs E/S ou l’écriture de l’intégralité des données.

Pour plus d’informations, voir la section Programmation asynchrone et événements générés par un objet FileStream ouvert en mode asynchrone .

Incluez du code permettant de lire et d’écrire des données, le cas échéant.

La classe FileStream propose de nombreuses méthodes relatives à la lecture ou l’écriture (elles commencent toutes par « read » ou « write »). La méthode que vous choisissez pour lire et écrire des données varie en fonction du format des données dans le fichier cible.

Par exemple, si les données du fichier cible sont au format texte UTF, vous pouvez utiliser les méthodes readUTFBytes() et writeUTFBytes() . Pour manipuler les données en tant que tableaux d’octets, utilisez les méthodes readByte() , readBytes() , writeByte() et writeBytes() . Pour plus d’informations, voir la section Format de données et choix des méthodes de lecture et d’écriture .

Si vous avez ouvert le fichier en mode asynchrone, veillez à ce qu’un volume suffisant de données soit disponible avant d’appeler une méthode de lecture. Pour plus d’informations, voir la section Mémoire tampon de lecture et propriété bytesAvailable d’un objet FileStream .

Si, avant d’accéder en écriture à un fichier, vous souhaitez vérifier la quantité d’espace disque disponible, vous pouvez consulter la propriété spaceAvailable de l’objet File. Pour plus d’informations, voir la section Détermination de l’espace disponible sur un volume .

Appelez la méthode close() de l’objet FileStream lorsque vous avez terminé de manipuler le fichier.

D’autres applications peuvent alors accéder à ce dernier.

Pour plus d’informations, voir la section Initialisation d’un objet FileStream et ouverture et fermeture de fichiers .

Vous trouverez un exemple d’application utilisant la classe FileStream pour accéder en lecture et en écriture à des fichiers dans les articles suivants du Centre des développeurs Adobe AIR :