我有一个基于 MAC 地址的网络表示的 erlang 位串,例如<<255,0,0,0,0,1>> ,并希望将其转换为整数。进行这种转换的最有效方法是什么?
谢谢,
马特。
请您参考如下方法:
您可以使用 :Size 选择打包/匹配的数据量。和 -unit:N选项:
1> <<X:6/integer-unit:8>> = <<255,0,0,0,0,1>>.
<<255,0,0,0,0,1>>
2> X.
280375465082881
或者更动态:
3> Bin = <<255,0,0,0,0,1>>.
<<255,0,0,0,0,1>>
4> Size = size(Bin).
6
5> <<Int:(Size)/integer-unit:8>> = Bin.
<<255,0,0,0,0,1>>
6> Int.
280375465082881
使用这些可变大小,您几乎可以解压缩任何您想要的东西。




