Dela via


BinaryFormat.List

Syntax

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

Om

Returnerar ett binärt format som läser en sekvens med objekt och returnerar en list. Parametern binaryFormat anger binärformatet för varje objekt. Det finns tre sätt att avgöra hur många objekt som lästs:

  • Om inte countOrCondition anges kommer binärformatet att läsas tills det inte finns några fler objekt.
  • countOrCondition Om är ett tal läser det binära formatet så många objekt.
  • countOrCondition Om är en funktion anropas den funktionen för varje objekt som läss. Funktionen returnerar true för att fortsätta och false för att sluta läsa objekt. Det sista objektet ingår i listan.
  • countOrCondition Om är ett binärt format förväntas antalet objekt föregå listan och det angivna formatet används för att läsa antalet.

Exempel 1

Läs byte till slutet av data.

Användning

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

Output

{1, 2, 3}

Exempel 2

Läs två byte.

Användning

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

Output

{1, 2}

Exempel 3

Läs byte tills bytevärdet är större än eller lika med två.

Användning

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

Output

{1, 2}