I am trying to make an integer into a binary:
543 = <<"543">>
How can I do this without
integer_to_list(list_to_binary(K)).
To convert integer to binary, start with the integer in question and divide it by 2 keeping notice of the quotient and the remainder. Continue dividing the quotient by 2 until you get a quotient of zero. Then just write out the remainders in the reverse order.
Use a data structure called a binary to store large quantities of raw data. Binaries store data in a much more space efficient manner than in lists or tuples, and the runtime system is optimized for the efficient input and output of binaries.
To convert decimal to binary, Java has a method “Integer. toBinaryString()”. The method returns a string representation of the integer argument as an unsigned integer in base 2.
If you want to convert 543 to <<"543">> I don't think you can find something faster than:
1> list_to_binary(integer_to_list(543)).
<<"543">>
Because in this case both functions implemented in C.
If you want to convert integer to the smallest possible binary representation you can use binary:encode_unsigned function from the new binary module like this:
1> binary:encode_unsigned(543).
<<2,31>>
2> binary:encode_unsigned(543, little).
<<31,2>>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With