Извлечь первые N элементов двоичного файла в Erlang - PullRequest
0 голосов
/ 19 марта 2019

Может кто-нибудь подскажите, пожалуйста, как получить первые 4 символа в следующем двоичном списке в Erlang:

<<245,185,198,200,52,227,138,93,250>>

Ответы [ 3 ]

6 голосов
/ 19 марта 2019

Использовать Синтаксис бита :

<< R:4/binary,_/binary >> = <<245,185,198,200,52,227,138,93,250>>.
0 голосов
/ 03 апреля 2019
1> M = <<245,185,198,200,52,227,138,93,250>>.
<<245,185,198,200,52,227,138,93,250>>
2> <<A,B,C,D, _/binary>> = M.
<<245,185,198,200,52,227,138,93,250>>
3> A.
245
4> B.
185
5> C.
198
6> D.
200
7> 
0 голосов
/ 19 марта 2019

есть два способа:

1)

двоичный файл в списке -

[245,185,198,200,52,227,138,93,250] = binary_to_list(<<245,185,198,200,52,227,138,93,250>>).
{"õ¹ÆÈ",[52,227,138,93,250]} = lists:split(4, [245,185,198,200,52,227,138,93,250]).

2)

или получить прямую двоичную часть

<<"õ¹ÆÈ">> = binary:part(<<245,185,198,200,52,227,138,93,250>>, 0, 4).

3)

если вам нужно 4 точных числа - вы можете использовать эту функцию

[A, B, C, D | _Tail] = binary_to_list(<<245,185,198,200,52,227,138,93,250>>).

2> A.
245
3> B.
185
4> C.
198
5> D
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...