如何将字符串中的大十进制数转换为 Java 中的十六进制?
How to convert a big decimal number in a String into Hexadecimal in Java?
我有一个字符串中的 12 位数字,我需要将其转换为十六进制。
unit_address = '0064627520128';
我尝试使用
Integer.toHexString("string")
但它不起作用,因为十进制值很大。
使用此方法只能将整数值转换为十六进制,但在我的情况下不行。
您可以使用 BigInteger 而不是 BigDecimal。这样你就可以使用
new BigInteger("18446744073709551616").toString(16)
如果您无法更改原始对象的类型,请稍后在方法中将其转换为 BigInteger
new BigDecimal("18446744073709551616").toBigInteger().toString(16);
我有一个字符串中的 12 位数字,我需要将其转换为十六进制。
unit_address = '0064627520128';
我尝试使用
Integer.toHexString("string")
但它不起作用,因为十进制值很大。
使用此方法只能将整数值转换为十六进制,但在我的情况下不行。
您可以使用 BigInteger 而不是 BigDecimal。这样你就可以使用
new BigInteger("18446744073709551616").toString(16)
如果您无法更改原始对象的类型,请稍后在方法中将其转换为 BigInteger
new BigDecimal("18446744073709551616").toBigInteger().toString(16);