Прочитать на английском

Поделиться через


BinaryFormat.List

Синтаксис

BinaryFormat.List(binaryFormat as function, optional countOrCondition as any) as function

О программе

Возвращает двоичный формат, который считывает последовательность элементов и возвращает значение list. Параметр binaryFormat задает двоичный формат каждого элемента. Существует три способа определения количества прочитанных элементов:

  • Если этот формат не указан, двоичный countOrCondition формат будет считываться до тех пор, пока нет дополнительных элементов.
  • countOrCondition Если это число, двоичный формат будет считывать много элементов.
  • countOrCondition Если это функция, эта функция будет вызвана для каждого элемента чтения. Функция возвращает значение true, чтобы продолжить, и значение false, чтобы остановить чтение элементов. Окончательный элемент включен в список.
  • Если countOrCondition является двоичным форматом, то ожидается, что число элементов предшествует списку, а для чтения счетчика используется указанный формат.

Пример 1

Чтение байтов до конца данных.

Использование

let
    binaryData = #binary({1, 2, 3}),
    listFormat = BinaryFormat.List(BinaryFormat.Byte)
in
    listFormat(binaryData)

Выходные данные

{1, 2, 3}

Пример 2

Чтение двух байтов.

Использование

let
    binaryData = #binary({1, 2, 3}),
    listFormat = BinaryFormat.List(BinaryFormat.Byte, 2)
in
    listFormat(binaryData)

Выходные данные

{1, 2}

Пример 3

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

Использование

let
    binaryData = #binary({1, 2, 3}),
    listFormat = BinaryFormat.List(BinaryFormat.Byte, (x) => x < 2)
in
    listFormat(binaryData)

Выходные данные

{1, 2}