Κοινή χρήση μέσω


BinaryFormat.List

Σύνταξη

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

Περίπου

Επιστρέφει μια δυαδική μορφή που διαβάζει μια ακολουθία στοιχείων και επιστρέφει ένα list. Η παράμετρος binaryFormat καθορίζει τη δυαδική μορφή κάθε στοιχείου. Υπάρχουν τρεις τρόποι για να προσδιορίσετε τον αριθμό των στοιχείων για ανάγνωση:

  • Εάν η countOrCondition δεν έχει καθοριστεί, τότε θα γίνει ανάγνωση της δυαδικής μορφής μέχρι να μην υπάρχουν άλλα στοιχεία.
  • Εάν η countOrCondition είναι αριθμός, τότε η δυαδική μορφή θα διαβάσει τόσα πολλά στοιχεία.
  • Εάν η countOrCondition είναι συνάρτηση, τότε αυτή η συνάρτηση θα καλείται για κάθε στοιχείο που διαβάζεται. Η συνάρτηση επιστρέφει την τιμή true για να συνεχίσει και την τιμή false για να διακόψει την ανάγνωση των στοιχείων. Το τελικό στοιχείο περιλαμβάνεται στη λίστα.
  • Εάν η countOrCondition είναι δυαδική μορφή, τότε το πλήθος των στοιχείων αναμένεται να προηγείται της λίστας και η καθορισμένη μορφή χρησιμοποιείται για την ανάγνωση του πλήθους.

Παράδειγμα 1

Διαβάστε byte μέχρι το τέλος των δεδομένων.

χρήσης

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

εξόδου

{1, 2, 3}

Παράδειγμα 2

Διαβάστε δύο byte.

χρήσης

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

εξόδου

{1, 2}

Παράδειγμα 3

Διαβάστε byte μέχρι η τιμή byte να είναι μεγαλύτερη ή ίση με δύο.

χρήσης

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

εξόδου

{1, 2}