Как получить N бит из двоичного - PullRequest
0 голосов
/ 11 марта 2011

У меня есть двоичный файл, как получить из него N битов? например: << 2 # 101 >> как получить первый бит?

Ответы [ 2 ]

8 голосов
/ 11 марта 2011

Используя двоичное сопоставление с образцом:

1> <<B:1, Rest/bitstring>> = <<2#101>>.
<<5>>
2> B.
0
3> Rest.
<<5:7>>

Вам нужно будет использовать bitstring в качестве типа, поскольку он больше не будет кратным 8 битам (что требуется для типа binary),Rest теперь 7 бит.

0 голосов
/ 11 марта 2011

Посмотрите на объяснение синтаксиса битов Erlang в документации, которое должно прояснить ситуацию:

http://www.erlang.org/documentation/doc-5.6/doc/programming_examples/bit_syntax.html

Я написал небольшой пример с использованием тегов ID3, когда начал изучать Erlang (не то, чтобы я когда-либо добивался этого):

http://citizen428.net/archives/993

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...