Последовательность действий при чтении и записи файлов

Adobe AIR 1.0 и более поздних версий

Последовательность действий при записи и чтении файлов показана ниже.

Инициализация объекта File, задающего путь.

Объект File представляет собой путь к файлу, с которым планируется работать (или к файлу, который будет создан позже).

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

В примере используется свойство File.documentsDirectory и метод resolvePath() объекта File для инициализации объекта File. Тем не менее есть множество других способов указания объекта File на файл. Дополнительные сведения см. в разделе « Объект File, указывающий на файл ».

Инициализируйте объект FileStream.

Вызовите метод open() или openAsync() объекта FileStream.

Вызываемый метод зависит от того, требуется ли открывать файл для синхронных или асинхронных операций. Объект File используется в качестве параметра file метода open. Для параметра fileMode необходимо задать константу из класса FileMode, указывающую, как будет использоваться файл.

Например, в приведенном ниже коде инициализируется объект FileStream, используемый для создания файла и перезаписи существующих данных:

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

Дополнительные сведения см. в разделах « Инициализация объекта FileStream, открытие и закрытие файлов » и « Методы открытия объекта FileStream ».

Если файл открыт асинхронно (методом openAsync()), добавьте и настройте прослушиватели событий для объекта FileStream.

Эти методы прослушивателя событий реагируют на события, отправляемые объектом FileStream в различных ситуациях, включая считывание данных из файла, возникновение ошибок ввода/вывода, завершение записи данных в полном объеме.

Дополнительные сведения см. в разделе Асинхронное программирование и события, генерируемые асинхронно открытым объектом FileStream .

При необходимости добавьте код для чтения и записи данных.

Класс FileStream предлагает целый ряд методов чтения и записи. (Название каждого из них начинается со слова «read» или «write».) Метод, выбранный для чтения или записи данных, зависит от формата данных в целевом файле.

Например, если данные имеют кодировку UTF, можно использовать методы readUTFBytes() и writeUTFBytes() . Если данные обрабатываются как байтовые массивы, можно использовать методы readByte() , readBytes() , writeByte() и writeBytes() . Дополнительные сведения см. в разделе Форматы данных и выбор методов чтения и записи .

Если файл открыт асинхронно, то перед вызовом метода чтения убедитесь, что доступно достаточно данных. Дополнительные сведения см. в разделе « Буфер чтения и свойство bytesAvailable объекта FileStream ».

Если перед записью в файл требуется проверить объем свободного места на диске, это можно сделать с помощью свойства spaceAvailable объекта File. Дополнительные сведения см. в разделе « Определение свободного места на томе ».

После завершения работы с файлом вызовите метод close() объекта FileStream.

Вызов метода close() делает файл доступным для других приложений.

Дополнительные сведения см. в разделе Инициализация объекта FileStream, открытие и закрытие файлов .

Образец приложения, в котором для чтения и записи используется класс FileStream, рассматривается в следующих статьях в Центре разработки Adobe AIR: