Partager via


BinaryFormat.List

Syntaxe

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

À propos

Retourne un format binaire qui lit une séquence d’éléments et retourne une valeur list. Le paramètre binaryFormat spécifie le format binaire de chaque élément. Il existe trois façons de déterminer le nombre d’éléments lus :

  • Si countOrCondition n’est pas spécifié, le format binaire lit jusqu’à ce qu’il n’y ait plus d’éléments.
  • Si countOrCondition est un nombre, le format binaire lit ce nombre d’éléments.
  • Si countOrCondition est une fonction, cette fonction est appelée pour chaque élément lu. La fonction retourne true pour continuer, et false pour cesser de lire les éléments. L’élément final est inclus dans la liste.
  • Si countOrCondition est un format binaire, le nombre d’éléments doit précéder la liste, et le format spécifié est utilisé pour lire ce nombre.

Exemple 1

Lisez les octets jusqu’à la fin des données.

Utilisation

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

Sortie

{1, 2, 3}

Exemple 2

Lisez deux octets.

Utilisation

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

Sortie

{1, 2}

Exemple 3

Lisez les octets jusqu’à ce que la valeur d’octet soit supérieure ou égale à deux.

Utilisation

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

Sortie

{1, 2}