Spec-Zone.ru › Dart 1

dart:typed_data

Класс ByteData

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

Его можно использовать для упаковки и распаковки данных из внешних источников (таких как сети или файловые системы) и для обработки больших объемов числовых данных более эффективно, чем это возможно с обычными реализациями List. Он может экономить место, исключая необходимость в заголовках объектов, и время, исключая необходимость в копиях данных. Наконец, его можно использовать для преднамеренного повторного интерпретирования байтов, представляющих один арифметический тип, как другой. Например, этот фрагмент кода определяет, какое 32-битное целое число со знаком представлено байтами 32-битного числа с плавающей запятой:

var buffer = new Uint8List(8).buffer;
var bdata = new ByteData.view(buffer);
bdata.setFloat32(0, 3.04);
int huh = bdata.getInt32(0);
Реализует
  • TypedData

Конструкторы

ByteData(int length)
factory

Создаёт ByteData указанной длины (в элементах), все байты которого изначально равны нулю.

ByteData.view(ByteBuffer buffer, [ int offsetInBytes = 0, int length ])
factory

Создаёт ByteData вид указанного региона в buffer.

Свойства

buffer → ByteBuffer
только для чтения, унаследованное

Возвращает буфер байтов, связанный с этим объектом.

elementSizeInBytes → int
только для чтения, унаследованное

Возвращает количество байтов в представлении каждого элемента в этом списке.

hashCode → int
только для чтения, унаследованное

Хеш-код этого объекта.

lengthInBytes → int
только для чтения, унаследованное

Возвращает длину этого представления в байтах.

offsetInBytes → int
только для чтения, унаследованное

Возвращает смещение в байтах в базовом буфере байтов этого представления.

runtimeType → Type
только для чтения, унаследованное

Представление типа времени выполнения объекта.

Операторы

operator ==(other) → bool
унаследованное

Оператор равенства.

Методы

getFloat32(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → double

Возвращает число с плавающей точкой, представленное четырьмя байтами по указанному byteOffset в этом объекте, в формате IEEE 754 с одинарной точностью (binary32).

getFloat64(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → double

Возвращает число с плавающей точкой, представленное восемью байтами по указанному byteOffset в этом объекте, в формате IEEE 754 с двойной точностью (binary64).

getInt8(int byteOffset) → int

Возвращает (возможно, отрицательное) целое число, представленное байтом по указанному byteOffset в этом объекте, в двоичном представлении со знаком (two's complement).

getInt16(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → int

Возвращает (возможно, отрицательное) целое число, представленное двумя байтами по указанному byteOffset в этом объекте, в двоичном формате со знаком (two's complement).

getInt32(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → int

Возвращает (возможно, отрицательное) целое число, представленное четырьмя байтами по указанному byteOffset в этом объекте, в двоичном формате со знаком (two's complement).

getInt64(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → int

Возвращает (возможно, отрицательное) целое число, представленное восемью байтами по указанному byteOffset в этом объекте, в двоичном формате со знаком (two's complement).

getUint8(int byteOffset) → int

Возвращает положительное целое число, представленное байтом по указанному byteOffset в этом объекте, в беззнаковом двоичном формате.

getUint16(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → int

Возвращает положительное целое число, представленное двумя байтами, начиная с указанного byteOffset в этом объекте, в беззнаковом двоичном формате.

getUint32(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → int

Возвращает положительное целое число, представленное четырьмя байтами, начиная с указанного byteOffset в этом объекте, в беззнаковом двоичном формате.

getUint64(int byteOffset, [ Endianness endian = Endianness.BIG_ENDIAN ]) → int

Возвращает положительное целое число, представленное восемью байтами, начиная с указанного byteOffset в этом объекте, в беззнаковом двоичном формате.

setFloat32(int byteOffset, double value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает четыре байта, начиная с указанного byteOffset в этом объекте, в представление с плавающей точкой IEEE 754 одинарной точности (binary32) указанного value.

setFloat64(int byteOffset, double value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает восемь байтов, начиная с указанного byteOffset в этом объекте, в представление с плавающей точкой IEEE 754 двойной точности (binary64) указанного value.

setInt8(int byteOffset, int value) → void

Устанавливает байт по указанному byteOffset в этом объекте в двоичном представлении со знаком (two's complement) указанного value, который должен уместиться в одном байте.

setInt16(int byteOffset, int value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает два байта, начиная с указанного byteOffset в этом объекте, в двоичном представлении со знаком (two's complement) указанного value, который должен уместиться в двух байтах.

setInt32(int byteOffset, int value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает четыре байта, начиная с указанного byteOffset в этом объекте, в двоичном представлении со знаком (two's complement) указанного value, который должен уместиться в четырёх байтах.

setInt64(int byteOffset, int value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает восемь байтов, начиная с указанного byteOffset в этом объекте, в двоичном представлении со знаком (two's complement) указанного value, который должен уместиться в восьми байтах.

setUint8(int byteOffset, int value) → void

Устанавливает байт по указанному byteOffset в этом объекте в беззнаковом двоичном представлении указанного value, который должен уместиться в одном байте.

setUint16(int byteOffset, int value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает два байта, начиная с указанного byteOffset в этом объекте, в беззнаковом двоичном представлении указанного value, который должен уместиться в двух байтах.

setUint32(int byteOffset, int value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает четыре байта, начиная с указанного byteOffset в этом объекте, в беззнаковом двоичном представлении указанного value, который должен уместиться в четырёх байтах.

setUint64(int byteOffset, int value, [ Endianness endian = Endianness.BIG_ENDIAN ]) → void

Устанавливает восемь байтов, начиная с указанного byteOffset в этом объекте, в беззнаковом двоичном представлении указанного value, который должен уместиться в восьми байтах.

noSuchMethod(Invocation invocation) → dynamic
inherited

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

toString() → String
inherited

Возвращает строковое представление этого объекта.

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-typed_data/ByteData-class.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API