Lewati ke konten utama

BinaryFormat.List

Menghasilkan format biner yang akan membaca urutan item dan menghasilkan daftar.

Syntax

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

Remarks

Menghasilkan format biner, yang membaca urutan item dan menghasilkan daftar. Parameter binaryFormat menentukan format biner dari tiap item. Berikut adalah tiga cara untuk menentukan jumlah item yang dibaca:

  • Jika countOrCondition tidak ditetapkan, format biner akan membaca hingga tidak ada lagi item.
  • Jika countOrCondition adalah angka, format biner akan membaca sebanyak item tersebut.
  • Jika countOrCondition adalah fungsi, fungsi tersebut akan digunakan untuk item yang dibaca. Fungsi akan menghasilkan true untuk melanjutkan, dan false untuk berhenti membaca item. Item akhir akan disertakan dalam daftar.
  • Jika countOrCondition adalah format biner, hitungan item diperkirakan untuk mendahului daftar, dan format yang ditetapkan akan digunakan untuk membaca hitungan.

Examples

Example #1

Membaca byte hingga akhir data.

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

Result:

{1, 2, 3}

Example #2

Membaca dua byte.

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

Result:

{1, 2}

Example #3

Membaca byte hingga nilai byte lebih besar dari atau sama dengan dua.

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