Пакетflash.utils
Классpublic class ByteArray
НаследованиеByteArray Inheritance Object
Реализует IDataInput, IDataOutput

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

В классе ByteArray предусмотрены методы и свойства для оптимизации чтения и записи двоичных данных, а также работы с ними.

Примечание. Класс ByteArray предназначен для опытных разработчиков, которым требуется доступ к данным на уровне байт.

Данные в памяти представляют собой упакованный массив (наиболее компактное представление типа данных) байт, но с экземпляром класса ByteArray можно работать с использованием стандартных операторов [] (доступа к массивам). Чтение из него и запись в него можно осуществлять как в файл в памяти, с использованием методов, похожих на методы классов URLStream и Socket.

Кроме того, поддерживается сжатие и распаковка zlib, а также сериализация объекта Action Message Format (AMF).

Среди возможных вариантов использования класса ByteArray следующие:

Посмотреть примеры

См. также

[] (доступ к массиву)
Класс Socket
Класс URLStream


Общедоступные свойства
 СвойствоОпределено
  bytesAvailable : uint
[только для чтения] Число байт данных, доступных для чтения от текущей позиции в массиве байт до конца массива.
ByteArray
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  defaultObjectEncoding : uint
[статические] Обозначает кодировку объекта по умолчанию класса ByteArray для использования в новом экземпляре ByteArray.
ByteArray
  endian : String
Изменяет или считывает порядок байт данных: Endian.BIG_ENDIAN или Endian.LITTLE_ENDIAN.
ByteArray
  length : uint
Длина объекта ByteArray в байтах.
ByteArray
  objectEncoding : uint
Позволяет определить, какой формат — ActionScript 3.0, ActionScript 2.0 или ActionScript 1.0, — должен применяться при записи или чтении из экземпляра ByteArray.
ByteArray
  position : uint
Перемещает или возвращает текущую позицию указателя файла в объекте ByteArray (в байтах).
ByteArray
 Inheritedprototype : Object
[статические] Ссылка на модель объекта класса или функции.
Object
Общедоступные методы
 МетодОпределено
  
Создает экземпляр ByteArray, представляющий упакованный массив байт. С помощью методов и свойств данного класса можно оптимизировать хранилище и поток данных.
ByteArray
  
Удаляет содержимое массива байт и сбрасывает значения длины и положения в значение 0.
ByteArray
  
compress(algorithm:String):void
Упаковывает массив байт.
ByteArray
  
Сжимает массив байт с использованием алгоритма упаковки DEFLATE.
ByteArray
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
  
Распаковывает массив байт.
ByteArray
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
  
Считывает из потока байт логическое значение.
ByteArray
  
Считывает из потока байт байт со знаком.
ByteArray
  
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Считывает число байт данных из потока байт, заданное параметром length.
ByteArray
  
Считывает из потока байт число IEEE 754 с двойной точностью (64-разрядное) и плавающей запятой.
ByteArray
  
Считывает из потока байт число IEEE 754 с одинарной точностью (32-разрядное) и плавающей запятой.
ByteArray
  
Считывает из потока байт 32-разрядное целое число со знаком.
ByteArray
  
readMultiByte(length:uint, charSet:String):String
Считывает из потока байт многобайтовую строку заданной длины с использованием заданного набора знаков.
ByteArray
  
Считывает объект из массива байт, зашифрованного в сериализованный формат AMF.
ByteArray
  
Считывает из потока байт 16-разрядное целое число со знаком.
ByteArray
  
Считывает из потока байт байт без знака.
ByteArray
  
Считывает из потока байт 32-разрядное целое число без знака.
ByteArray
  
Считывает из потока байт 16-разрядное целое число без знака.
ByteArray
  
Считывает из потока байт строку UTF-8.
ByteArray
  
Считывает последовательность байт UTF-8, заданную параметром length, из потока байт и возвращает строку.
ByteArray
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
  
Преобразует массив байт в строку.
ByteArray
  
Распаковывает массив байт.
ByteArray
 Inherited
Возвращает элементарное значение заданного объекта.
Object
  
Записывает логическое значение.
ByteArray
  
Записывает байт в поток байт.
ByteArray
  
writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Записывает в поток байт последовательность байт из заданного массива байт, начиная с начальных байт (индекс, отсчитываемый от нуля).
ByteArray
  
Записывает в поток байт число IEEE 754 с двойной точностью (64-разрядное) и плавающей запятой.
ByteArray
  
Записывает в поток байт число IEEE 754 с одинарной точностью (32-разрядное) и плавающей запятой.
ByteArray
  
Записывает в поток байт 32-разрядное целое число со знаком.
ByteArray
  
Записывает многобайтовую строку в поток байт с использованием заданного набора знаков.
ByteArray
  
Записывает объект в массив байт в сериализованном формате AMF.
ByteArray
  
Записывает в поток байт 16-разрядное целое число.
ByteArray
  
Записывает в поток байт 32-разрядное целое число без знака.
ByteArray
  
Записывает строку UTF-8 в поток байт.
ByteArray
  
Записывает строку UTF-8 в поток байт.
ByteArray
Сведения о свойстве
bytesAvailableсвойство
bytesAvailable:uint  [только для чтения]

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Число байт данных, доступных для чтения от текущей позиции в массиве байт до конца массива.

Каждый раз, когда выполняется доступ к объекту ByteArray, в сочетании с методами чтения следует использовать свойство bytesAvailable. Это позволит обеспечить чтение действительных данных.


Реализация
    public function get bytesAvailable():uint
defaultObjectEncodingсвойство 
defaultObjectEncoding:uint  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Обозначает кодировку объекта по умолчанию класса ByteArray для использования в новом экземпляре ByteArray. При создании экземпляра ByteArray используется значение кодировки defaultObjectEncoding. Свойство defaultObjectEncoding инициализируется в ObjectEncoding.AMF3.

Когда объект записывается или считывается из двоичных данных, свойство objectEncoding указывает используемую версию формата: формат ActionScript 3.0, ActionScript 2.0 или ActionScript 1.0. Значение представлено константой из класса ObjectEncoding.


Реализация
    public static function get defaultObjectEncoding():uint
    public function set defaultObjectEncoding(value:uint):void

См. также

endianсвойство 
endian:String  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Изменяет или считывает порядок байт данных: Endian.BIG_ENDIAN или Endian.LITTLE_ENDIAN.


Реализация
    public function get endian():String
    public function set endian(value:String):void

См. также

lengthсвойство 
length:uint  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Длина объекта ByteArray в байтах.

Если длина установлена в значение, превышающее текущую длину, правая часть массива байт заполняется нулями.

Если длина установлена в значение, меньшее текущей длины, выполняется усечение массива байт.


Реализация
    public function get length():uint
    public function set length(value:uint):void
objectEncodingсвойство 
objectEncoding:uint  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Позволяет определить, какой формат — ActionScript 3.0, ActionScript 2.0 или ActionScript 1.0, — должен применяться при записи или чтении из экземпляра ByteArray. Значение представлено константой из класса ObjectEncoding.


Реализация
    public function get objectEncoding():uint
    public function set objectEncoding(value:uint):void

См. также

positionсвойство 
position:uint  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Перемещает или возвращает текущую позицию указателя файла в объекте ByteArray (в байтах). При следующем вызове метода чтения с этого положения начинается чтение, а при вызове метода записи начинается запись.


Реализация
    public function get position():uint
    public function set position(value:uint):void
Сведения о конструкторе
ByteArray()Конструктор
public function ByteArray()

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Создает экземпляр ByteArray, представляющий упакованный массив байт. С помощью методов и свойств данного класса можно оптимизировать хранилище и поток данных.

Сведения о методе
clear()метод
flash10 function clear():void

Язык версии : ActionScript 3.0
Версии среды выполнения: Flash Player 10

Удаляет содержимое массива байт и сбрасывает значения length и position в значение 0. При явном вызове этого метода высвобождается память, используемая экземпляром ByteArray.

compress()метод 
public function compress(algorithm:String):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Упаковывает массив байт. Упаковывается весь массив байт. Для содержимого, которое выполняется в Adobe AIR, можно указать алгоритм упаковки посредством передачи значения (определенного в классе CompressionAlgorithm) в качестве параметра algorithm. Flash Player поддерживает только алгоритм по умолчанию, zlib.

После вызова свойству length объекта ByteArray присваивается новая длина. Свойство position устанавливается на конец массива байт.

Формат упакованных данных zlib описан в документе http://www.ietf.org/rfc/rfc1950.txt.

Алгоритм упаковки данных deflate описан в документе http://www.ietf.org/rfc/rfc1951.txt.

Алгоритм упаковки deflate используется в различных форматах упаковки (например, zlib, gzip, некоторых реализациях zip и в других). Когда данные упаковываются с использованием одного из этих форматов упаковки, помимо хранения упакованной версии исходных данных, данные формата упаковки (например, ZIP-файл) содержат метаданные. Вот некоторые из примером метаданных, включаемых в различные форматы файлов: имя файла, дата и время изменения файла, исходный размер файла, необязательные комментарии, контрольная сумма и другие данные.

Например, когда объект ByteArray сжимается с помощью алгоритма zlib, результирующий объект ByteArray получает структуру определенного формата. Определенные байты содержат метаданные об упакованных данных, а другие байты содержат сжатую версию исходных данных объекта ByteArray. Как определено спецификацией формата упакованных данных zlib, эти байты (то есть та часть, которая содержит упакованную версию исходных данных) сжимаются с использованием алгоритма deflate. Как следствие, эти байты идентичны результату вызова функции compress(CompressionAlgorithm.DEFLATE) для исходного объекта ByteArray. Однако результат выполнения compress(CompressionAlgorithm.ZLIB) содержит дополнительные метаданные, в то время как результат выполнения compress(CompressionAlgorithm.DEFLATE) содержит только упакованную версию исходных данных ByteArray и ничего больше.

Поэтому, чтобы формат deflate можно было использовать для упаковки данных экземпляра ByteArray в определенный формат (например, gzip или zip), нельзя просто вызвать compress(CompressionAlgorithm.DEFLATE). Необходимо создать объект ByteArray со структурой, соответствующей спецификации формата упаковки, включающий соответствующие метаданные, а также упакованные данные, полученные с использованием формата deflate. Аналогично, чтобы раскодировать данные, упакованные в такой формат, как gzip или zip, по отношению к этим данным нельзя просто вызвать метод uncompress(CompressionAlgorithm.DEFLATE). Сначала необходимо отделить метаданные от упакованных данных, а затем использовать формат deflate для распаковки упакованных данных.

Параметры

algorithm:String (default = NaN) — Алгоритм сжатия, используемый при упаковке. Доступные значения определены в виде констант в классе CompressionAlgorithm. Формат по умолчанию — zlib. Этот параметр распознается только для содержимого, выполняемого в Adobe AIR. Flash Player поддерживает только алгоритм по умолчанию, zlib, и выдает исключение при попытке передать значение для этого параметра.

См. также

deflate()метод 
flash10 function deflate():void

Язык версии : ActionScript 3.0
Версии среды выполнения: Flash Player 10

Сжимает массив байт с использованием алгоритма упаковки DEFLATE. Упаковывается весь массив байт.

После вызова свойству length объекта ByteArray присваивается новая длина. Свойство position устанавливается на конец массива байт.

Алгоритм упаковки данных DEFLATE описан в документе http://www.ietf.org/rfc/rfc1951.txt.

Алгоритм упаковки DEFLATE используется в различных форматах упаковки (например, zlib, gzip некоторых реализациях zip и в других). Когда данные упаковываются с использованием одного из этих форматов упаковки, помимо хранения упакованной версии исходных данных, данные формата упаковки (например, ZIP-файл) содержат метаданные. Вот некоторые из примером метаданных, включаемых в различные форматы файлов: имя файла, дата и время изменения файла, исходный размер файла, необязательные комментарии, контрольная сумма и другие данные.

Например, когда объект ByteArray сжимается с помощью метода compress(), объект ByteArray сжимается с использованием формата упакованных данных zlib. Результирующий объект ByteArray имеет структуру определенного формата. Определенные байты содержат метаданные об упакованных данных, а другие байты содержат сжатую версию исходных данных объекта ByteArray. Как определено спецификацией формата упакованных данных zlib, эти байты (то есть та часть, которая содержит упакованную версию исходных данных) сжимаются с использованием алгоритма DEFLATE. Как следствие, эти байты идентичны результату вызова функции deflate() для исходного объекта ByteArray. Однако результат выполнения метода compress() содержит дополнительные метаданные, в то время как результат выполнения метода deflate() содержит только упакованную версию исходных данных ByteArray и ничего больше.

Аналогично, чтобы использовать метод deflate() для упаковки экземпляра объекта ByteArray в определенный формат (например, gzip или zip), для этих данных нельзя просто вызвать метод deflate(). Необходимо создать объект ByteArray со структурой, соответствующей спецификации формата упаковки, включающие соответствующие метаданные, а также упакованные данные, полученные с использованием метода deflate(). Аналогично, чтобы раскодировать данные, упакованные в такой формат, как gzip или zip, для этих данных нельзя просто использовать метод inflate(). Сначала необходимо отделить метаданные от упакованных данных, а затем использовать метод deflate() для распаковки упакованных данных.

См. также

inflate()метод 
flash10 function inflate():void

Язык версии : ActionScript 3.0
Версии среды выполнения: Flash Player 10

Распаковывает массив байт. Массив байт должен быть сжат с использованием алгоритма упаковки DEFLATE, применяемого методом deflate().

После вызова свойству length объекта ByteArray присваивается новая длина. Свойству position присваивается значение 0.

Алгоритм упаковки данных DEFLATE описан в документе http://www.ietf.org/rfc/rfc1951.txt.

При раскодировании данных, упакованных в формат, использующий алгоритм сжатия DEFLATE (например, формат gzip или zip), вызов метода inflate() не сработает для объекта ByteArray, содержащего метаданные. Сначала необходимо отделить метаданные, которые входят в состав упакованного формата данных, от самих сжатых данных. Дополнительную информацию см. в описании метода deflate().


Выдает
IOError — Данные не являются допустимыми упакованными данными, они не были сжаты с использованием алгоритма упаковки DEFLATE.

См. также

readBoolean()метод 
public function readBoolean():Boolean

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт логическое значение. Считывается один байт. Если этот байт ненулевой, то возвращается значение true. В противном случае возвращается значение false.

Возвращает
Boolean — Возвращает значение true, если считывается ненулевой байт, в противном случае используется значение false.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readByte()метод 
public function readByte():int

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт байт со знаком.

Возвращенное значение находится в диапазоне от -128 до 127.

Возвращает
int — Целое число между -128 и 127.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readBytes()метод 
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает·из потока байт число байт данных, заданное параметром length. Байты считываются в объект ByteArray, определяемый параметром bytes, при этом байты записываются в целевой массив ByteArray, начиная с позиции, определяемой параметром offset.

Параметры

bytes:ByteArray — Объект ByteArray, в который считываются данные.
 
offset:uint (default = 0) — Смещение (положение) в массиве bytes, начиная с которого должны быть прочитаны данные.
 
length:uint (default = 0) — Число байт для считывания. Если значение по умолчанию равно 0, считываются все доступные данные.


Выдает
EOFError — Недостаточно данных, доступных для чтения.
readDouble()метод 
public function readDouble():Number

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт число IEEE 754 с двойной точностью (64-разрядное) и плавающей запятой.

Возвращает
Number — Число с двойной точностью (64-разрядное) и плавающей запятой.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readFloat()метод 
public function readFloat():Number

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт число IEEE 754 с одинарной точностью (32-разрядное) и плавающей запятой.

Возвращает
Number — Число с одинарной точностью (32-разрядное) и плавающей запятой.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readInt()метод 
public function readInt():int

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт 32-разрядное целое число со знаком.

Возвращенное значение находится в диапазоне от -2147483648 до 2147483647.

Возвращает
int — 32-разрядное целое число со знаком между -2147483648 и 2147483647.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readMultiByte()метод 
public function readMultiByte(length:uint, charSet:String):String

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт многобайтовую строку заданной длины с использованием заданного набора знаков.

Параметры

length:uint — Число считываемых из потока байтов.
 
charSet:String — Строка, обозначающая набор символов, которые используются для интерпретации байтов. Возможные строки наборов символов: "shift_jis", "cn-gb", "iso-8859-1" и другие. Полный список см. в разделе Поддерживаемые наборы символов.

Примечание. Если текущая система не распознает значение параметра charSet, то в качестве набора символов приложение будет использовать кодовую страницу по умолчанию. Например, значение параметра charSet, например в myTest.readMultiByte(22, "iso-8859-01"), которое использует 01вместо 1 может работать на вашем компьютере, но привести к сбою на другой рабочей станции. На другом компьютере приложение будет использовать кодовую страницу, заданную по умолчанию в системе.

Возвращает
String — Строка в кодировке UTF-8.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readObject()метод 
public function readObject():*

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает объект из массива байт, зашифрованного в сериализованный формат AMF.

Возвращает
* — Десериализованный объект.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readShort()метод 
public function readShort():int

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт 16-разрядное целое число со знаком.

Возвращенное значение находится в диапазоне от -32768 до 32767.

Возвращает
int — 16-разрядное целое число со знаком между -32768 и 32767.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readUnsignedByte()метод 
public function readUnsignedByte():uint

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт байт без знака.

Возвращенное значение находится в диапазоне от 0 до 255.

Возвращает
uint — 32-разрядное беззнаковое целое число между 0 и 255.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readUnsignedInt()метод 
public function readUnsignedInt():uint

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт 32-разрядное целое число без знака.

Возвращенное значение находится в диапазоне от 0 до 4294967295.

Возвращает
uint — 32-разрядное беззнаковое целое число между 0 и 4294967295.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readUnsignedShort()метод 
public function readUnsignedShort():uint

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт 16-разрядное целое число без знака.

Возвращенное значение находится в диапазоне от 0 до 65535.

Возвращает
uint — 16-разрядное беззнаковое целое число между 0 и 65535.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
readUTF()метод 
public function readUTF():String

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает из потока байт строку UTF-8. Предполагается, что в строку вставляется префикс с неподписанным значением, указывающим длину в байтах.

Возвращает
String — Строка в кодировке UTF-8.

Выдает
EOFError — Недостаточно данных, доступных для чтения.

См. также

readUTFBytes()метод 
public function readUTFBytes(length:uint):String

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Считывает последовательность байт UTF-8, заданную параметром length, из потока байт и возвращает строку.

Параметры

length:uint — Беззнаковое короткое целое число, указывающее длину в байтах UTF-8.

Возвращает
String — Строка заданной длины, состоящая из байт UTF-8.

Выдает
EOFError — Недостаточно данных, доступных для чтения.
toString()метод 
public function toString():String

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Преобразует массив байт в строку. Если данные массива начинаются маркером порядка байт Unicode, во время преобразования данных в строку приложение учтет этот маркер. Если параметр System.useCodePage установлен в значение true, приложение будет обрабатывать данные массива во время преобразования как данные в текущей системной кодировке.

Возвращает
String — Строковое представление массива байт.
uncompress()метод 
public function uncompress(algorithm:String):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Распаковывает массив байт. Для содержимого, которое выполняется в Adobe AIR, можно указать алгоритм упаковки посредством передачи значения (определенного в классе CompressionAlgorithm) в качестве параметра algorithm. Массив байт должен быть сжат с использованием этого же алгоритма. Flash Player поддерживает только алгоритм по умолчанию, zlib.

После вызова свойству length объекта ByteArray присваивается новая длина. Свойству position присваивается значение 0.

Формат упакованных данных zlib описан в документе http://www.ietf.org/rfc/rfc1950.txt.

Алгоритм упаковки данных deflate описан в документе http://www.ietf.org/rfc/rfc1951.txt.

При раскодировании данных, упакованных в формат, использующий алгоритм сжатия deflate (например, формат gzip или zip), вызов метода uncompress(CompressionAlgorithm.DEFLATE) не сработает для объекта ByteArray, содержащего метаданные. Сначала необходимо отделить метаданные, которые входят в состав упакованного формата данных, от самих сжатых данных. Дополнительную информацию см. в описании метода compress().

Параметры

algorithm:String (default = NaN) — Алгоритм сжатия, используемый при распаковке. Это должен быть тот же алгоритм сжатия, который использовался для упаковки данных. Доступные значения определены в виде констант в классе CompressionAlgorithm. Формат по умолчанию — zlib. Этот параметр распознается только для содержимого, выполняемого в Adobe AIR. Flash Player поддерживает только алгоритм по умолчанию, zlib, и выдает исключение при попытке передать значение для этого параметра.


Выдает
IOError — Данные не являются допустимыми упакованными данными, они не были сжаты с использованием указанного алгоритма упаковки.

См. также

writeBoolean()метод 
public function writeBoolean(value:Boolean):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает логическое значение. Записывается один байт, соответствующий параметру value. 1 в случае значения true, и 0 в случае значения false.

Параметры

value:Boolean — Логическое значение, показывающее, какой байт записывается. Если параметр содержит значение true, метод записывает 1. В случае значения false записывается 0.

writeByte()метод 
public function writeByte(value:int):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает байт в поток байт.

Используется 8 младших битов параметра. 24 старших бита игнорируются.

Параметры

value:int — 32-разрядное целое число. В поток байт записываются младшие 8 бит.

writeBytes()метод 
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает в поток байт последовательность байт длиной length из заданного массива байт (bytes), начиная со смещения offset (индекс отсчитывается от нуля).

Если параметр length опущен, применение длины по умолчанию, равной 0, приведет к тому, что метод будет записывать весь буфер, начиная со смещения offset. Если также опустить параметр offset, будет записываться весь буфер.

Если параметры offset или length находятся за пределами диапазона, то они корректируются так, чтобы совпасть с началом и концом массива bytes.

Параметры

bytes:ByteArray — Объект ByteArray.
 
offset:uint (default = 0) — Отсчитываемое от нуля значение индекса, определяющее положение начала записи в массив.
 
length:uint (default = 0) — Целое число без знака, определяющее глубину буфера для записи.

writeDouble()метод 
public function writeDouble(value:Number):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает в поток байт число IEEE 754 с двойной точностью (64-разрядное) и плавающей запятой.

Параметры

value:Number — Число с двойной точностью (64-разрядное) и плавающей запятой.

writeFloat()метод 
public function writeFloat(value:Number):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает в поток байт число IEEE 754 с одинарной точностью (32-разрядное) и плавающей запятой.

Параметры

value:Number — Число с одинарной точностью (32-разрядное) и плавающей запятой.

writeInt()метод 
public function writeInt(value:int):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает в поток байт 32-разрядное целое число со знаком.

Параметры

value:int — Целое число, записываемое в поток байт.

writeMultiByte()метод 
public function writeMultiByte(value:String, charSet:String):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает многобайтовую строку в поток байт с использованием заданного набора знаков.

Параметры

value:String — Записываемое значение строки.
 
charSet:String — Строка, обозначающая используемый набор символов. Возможные строки наборов символов: "shift_jis", "cn-gb", "iso-8859-1" и другие. Полный список см. в разделе Поддерживаемые наборы символов.

writeObject()метод 
public function writeObject(object:*):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает объект в массив байт в сериализованном формате AMF.

Параметры

object:* — Сериализуемый объект.

writeShort()метод 
public function writeShort(value:int):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает в поток байт 16-разрядное целое число. Используется 16 младших битов параметра. 16 старших битов игнорируются.

Параметры

value:int — 32-разрядное целое число, из которого в поток байт записывается 16 младших бит.

writeUnsignedInt()метод 
public function writeUnsignedInt(value:uint):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает в поток байт 32-разрядное целое число без знака.

Параметры

value:uint — Беззнаковое целое число, записываемое в поток байт.

writeUTF()метод 
public function writeUTF(value:String):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает строку UTF-8 в поток байт. Сначала записывается длина строки UTF-8 в байтах (в виде 16-разрядного целого числа), за которой следуют байты символов строки.

Параметры

value:String — Записываемое значение строки.


Выдает
RangeError — Если длина превышает 65535.
writeUTFBytes()метод 
public function writeUTFBytes(value:String):void

Язык версии : ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Записывает строку UTF-8 в поток байт. Аналогично writeUTF(), с тем различием, что writeUTFBytes() не вставляет перед строкой 16-разрядное слово, указывающее длину.

Параметры

value:String — Записываемое значение строки.

Примеры Как пользоваться примерами
ByteArrayExample.as

В следующем примере класс ByteArrayExample используется для записи в массив байт логического значения и представления числа "пи" с двойной точностью и плавающей запятой. Это можно сделать, выполнив следующие действия:
  1. Объявляется новый экземпляр объекта ByteArray byteArr.
  2. Записывается эквивалент байтового логического значения false, а затем проверяется длина и оно считывается.
  3. Записывается эквивалент числа "пи" с двойной точностью и плавающей запятой.
  4. Все эти девять байт, записанных в массив байт, считываются.

Примечание. Когда trace() вызывается для байта, то выводится десятичный эквивалент байт, хранящихся в байтовом массиве.

Обратите внимание на то, что в конце добавляется сегмент кода для проверки ошибок конца файла. Это позволяет прекратить считывание потока байт по достижении его окончания.

package {
    import flash.display.Sprite;
    import flash.utils.ByteArray;
    import flash.errors.EOFError;

    public class ByteArrayExample extends Sprite {        
        public function ByteArrayExample() {
            var byteArr:ByteArray = new ByteArray();

            byteArr.writeBoolean(false);
            trace(byteArr.length);            // 1
            trace(byteArr[0]);            // 0

            byteArr.writeDouble(Math.PI);
            trace(byteArr.length);            // 9
            trace(byteArr[0]);            // 0
            trace(byteArr[1]);            // 64
            trace(byteArr[2]);            // 9
            trace(byteArr[3]);            // 33
            trace(byteArr[4]);            // 251
            trace(byteArr[5]);            // 84
            trace(byteArr[6]);            // 68
            trace(byteArr[7]);            // 45
            trace(byteArr[8]);            // 24
            
            byteArr.position = 0;

            try {
                trace(byteArr.readBoolean() == false); // true
            } 
            catch(e:EOFError) {
                trace(e);           // EOFError: Error #2030: End of file was encountered.
            }
            
            try {
                trace(byteArr.readDouble());        // 3.141592653589793
            }
            catch(e:EOFError) {
                trace(e);           // EOFError: Error #2030: End of file was encountered.
            }
            
            try {
                trace(byteArr.readDouble());
            } 
            catch(e:EOFError) {
                trace(e);            // EOFError: Error #2030: End of file was encountered.
            }
        }
    }
}