Aller au contenu principal

BinaryFormat.List

Retourne un format binaire qui lit une séquence d'éléments et retourne une liste.

Syntax

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

Remarks

Retourne un format binaire qui lit une séquence d'éléments et retourne une 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 le countOrCondition n'est pas spécifié, le format binaire lit jusqu'à ce qu'il n'y ait plus d'éléments.
  • Si le countOrCondition est un nombre, alors le format binaire lit autant d'éléments.
  • Si le countOrCondition est une fonction, alors cette fonction sera appelée pour chaque élément lu. La fonction retourne la valeur 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, alors le nombre d'éléments doit précéder la liste, et le format spécifié est utilisé pour lire le nombre.

Examples

Example #1

Lit les octets jusqu'à la fin des données.

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

Result:

{1, 2, 3}

Example #2

Lit deux octets.

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

Result:

{1, 2}

Example #3

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

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

Result:

{1, 2}

Category

Binary Formats.Reading lists