Każdy plik jest zestawem bajtów na dysku. W języku ActionScript dane z pliku mogą być zawsze reprezentowane przez obiekt ByteArray. Przykład: poniższy kod odczytuje dane z pliku do obiektu ByteArray o nazwie
            
             bytes
            
            :
           
           var myFile:File = File.documentsDirectory.resolvePath("AIR Test/test.txt"); 
var myFileStream:FileStream = new FileStream(); 
myFileStream.addEventListener(Event.COMPLETE, completeHandler); 
myFileStream.openAsync(myFile, FileMode.READ); 
var bytes:ByteArray = new ByteArray(); 
 
function completeHandler(event:Event):void  
{ 
    myFileStream.readBytes(bytes, 0, myFileStream.bytesAvailable); 
} 
           
            I podobnie: poniższy kod zapisuje dane z obiektu ByteArray (o nazwie
            
             bytes
            
            ) do pliku:
           
           var myFile:File = File.documentsDirectory.resolvePath("AIR Test/test.txt"); 
var myFileStream:FileStream = new FileStream(); 
myFileStream.open(myFile, FileMode.WRITE); 
myFileStream.writeBytes(bytes, 0, bytes.length); 
           
            Jednak często zdarza się, że zapisywanie danych w obiekcie ByteArray języka ActionScript nie jest pożądane. I często dane są w określonym formacie.
           
           
            Na przykład: dane pliku mogą być w formacie pliku tekstowego i konieczne może być reprezentowanie takich danych w obiekcie String.
           
           
            Z tego powodu klasa FileStream zawiera metody read i write przeznaczone do odczytu i zapisu danych do/z obiektów innych niż ByteArray. Na przykład: metoda
            
             readMultiByte()
            
            umożliwia odczyt danych z pliku oraz zapis danych w postaci ciągu znaków, jak w poniższym kodzie:
           
           var myFile:File = File.documentsDirectory.resolvePath("AIR Test/test.txt"); 
var myFileStream:FileStream = new FileStream(); 
myFileStream.addEventListener(Event.COMPLETE, completed); 
myFileStream.openAsync(myFile, FileMode.READ); 
var str:String = ""; 
     
function completeHandler(event:Event):void  
{ 
    str = myFileStream.readMultiByte(myFileStream.bytesAvailable, "iso-8859-1"); 
} 
           
            Drugi parametr metody
            
             readMultiByte()
            
            określa format tekstowy, z którego korzysta język ActionScript w celu interpretacji danych (w tym przykładzie „iso-8859-1”). Środowisko Adobe AIR obsługuje typowe standardy kodowania zestawów znaków (zobacz
            
             Obsługiwane zestawy znaków
            
            ).
           
           
            Klasa FileStream zawiera również metodę
            
             readUTFBytes()
            
            , która wczytuje dane z buforu odczytu do ciągu znaków, wykorzystując zestaw znaków UTF-8. Znaki w zestawie znaków UTF-8 mają różną długość, dlatego nie należy używać metody
            
             readUTFBytes()
            
            w metodzie, która reaguje na zdarzenie
            
             progress
            
            , ponieważ dane na końcu buforu odczytu mogą reprezentować niepełny znak. (To obowiązuje również w przypadku zastosowania metody
            
             readMultiByte()
            
            z kodowaniem znaków o różnej długości). Z tego powodu należy odczytać cały zestaw danych, gdy obiekt FileStream wywoła zdarzenie
            
             complete
            
            .
           
           
            Istnieją również podobne metody zapisu:
            
             writeMultiByte()
            
            i
            
             writeUTFBytes()
            
            przeznaczone do pracy z obiektami String oraz plikami tekstowymi.
           
           
            Metody
            
             readUTF()
            
            oraz
            
             writeUTF()
            
            (nie należy ich mylić z metodami
            
             readUTFBytes()
            
            i
            
             writeUTFBytes()
            
            ) również odczytują i zapisują dane tekstowe do pliku, ale zakładają, że tekst jest poprzedzony danymi określającymi długość danych tekstowych, co nie jest często stosowane w przypadku standardowych plików tekstowych.
           
           
            Niektóre pliki tekstowe zapisane w formacie UTF rozpoczynają się od znaku „UTF-BOM” (oznaczenie kolejności danych), który definiuje kolejność bajtów, a także format kodowania (taki jak UTF-16 lub UTF-32).
           
           
            Przykład odczytu i zapisu pliku tekstowego zawiera sekcja
            
             Przykłady: wczytywanie pliku XML do obiektu XML
            
            .
           
           
            Metody
            
             readObject()
            
            i
            
             writeObject()
            
            są zawsze wygodnymi sposobami na zapisywanie i pobieranie danych dla złożonych obiektów ActionScript. Dane są zakodowane w formacie AMF (ActionScript Message Format). Oprogramowanie Adobe AIR, Flash Player, Flash Media Server i Flex Data Services zawiera interfejsy API służące do pracy z danymi w tym formacie.
           
           
            Istnieją również inne metody odczytu i zapisu (takie jak
            
             readDouble()
            
            i
            
             writeDouble()
            
            ). Jednak w przypadku korzystania z tych metod należy się upewnić, że format pliku jest zgodny z formatami danych definiowanych przez te metody.
           
           
            Formaty plików są często bardziej złożone niż proste formaty tekstowe. Na przykład: plik MP3 zawiera skompresowane dane, które mogą być interpretowane za pomocą algorytmów dekompresji i dekodowania, które są właściwe dla plików MP3. Pliki MP3 mogą również zawierać znaczniki ID3, które zawierają informacje o pliku w znacznikach metadanych (np. tytuł i wykonawca utworu). Istnieje wiele wersji formatu ID3, a najprostszy z nich (ID3 w wersji 1) został omówiony w sekcji
            
             Przykład: Odczyt i zapis danych z dostępem losowym
            
            .
           
           
            Inne formaty plików (dla obrazów, baz danych, dokumentów aplikacji itp.) mają inne struktury, a w celu korzystania z ich danych w języku ActionScript należy poznać strukturę danych.