Syntax
BinaryFormat.List(binaryFormat as function, optional countOrCondition as any) as function
About
返回一个二进制格式,该格式读取项序列并返回一个 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
读取字节,直到字节值大于或等于 2。
用法
let
binaryData = #binary({1, 2, 3}),
listFormat = BinaryFormat.List(BinaryFormat.Byte, (x) => x < 2)
in
listFormat(binaryData)
输出
{1, 2}