1
我有一個似乎期待整數的函數,但我有一個二進制值。我能告訴Erlang將二進制解釋爲一個整數嗎?將二進制值解釋爲整數
我怎麼能得到這個代碼工作(在REPL)?
Binary = <<"hello world">>.
Integer = binary_to_integer(Binary). % fix me
Increment = Integer + 1.
我有一個似乎期待整數的函數,但我有一個二進制值。我能告訴Erlang將二進制解釋爲一個整數嗎?將二進制值解釋爲整數
我怎麼能得到這個代碼工作(在REPL)?
Binary = <<"hello world">>.
Integer = binary_to_integer(Binary). % fix me
Increment = Integer + 1.
你可以用一點語法表達式從二進制文件中提取整數:
2> Binary = <<"hello world">>.
<<"hello world">>
3> Bits = bit_size(Binary).
88
4> <<Integer:Bits>> = Binary.
<<"hello world">>
5> Integer.
126207244316550804821666916
6> Increment = Integer + 1.
126207244316550804821666917
7> <<Increment:Bits>>.
<<"hello worle">>
閱讀完整的描述和the reference manual一些例子。
下面是一個較短的版本:
> crypto:bytes_to_integer(<<"hello world">>).
126207244316550804821666916
我二郎(r15b01)具有加密模塊,但它不包含bytes_to_integer/1。 –
@NathanielWaisbrot它在R16B01 :) – Ning