2015-05-08 2 views
1

Есть ли способ, чтобы преобразовать список шестнадцатеричного carácter в двоичную, которые соответствуют шестнадцатеричной кодировке Пример: [FF, AC, 01] => < < 255,172,1 >>Использования Hexadecimal в Erlang

ответ

3

Я думаю, вы имели в виду это: ["FF","AC","01"] => <<255,172,1>>.

Вы можете использовать функцию list_to_integer/2. В качестве второго аргумента требуется числовая база.

Hexs = ["FF","AC","01"], 
Ints = [list_to_integer(Hex, 16) || Hex <- Hexs], 
%% [255,172,1] 
Binary = list_to_binary(Ints). 
%% <<255,172,1>> 
+0

Да вот это Спасибо – Bou6

2

Альтернатива принятого ответа, чтобы перейти непосредственно в двоичный с помощью бинарного понимания:

1> Hexs = ["FF","AC","01"]. 
2> << <<(list_to_integer(C,16)):8>> || C <- Hexs >>. 
<<255,172,1>> 
Смежные вопросы