java.lang.NumberFormatException:对于输入字符串:"A3ADF30029011F"
java.lang.NumberFormatException: For input string: "A3ADF30029011F"
我正在尝试将十六进制转换为十进制和二进制,但对于给定的十六进制 "001F012900F3ADA3"
得到相同的错误,但使用任何在线转换器将相同的十六进制转换为十进制和二进制。
Integer.parseInt("001F012900F3ADA3",16); // to decimal conversion
Integer.toBinaryString(Integer.parseInt("001F012900F3ADA3", 16)); // to binary conversion
当我像 Integer.parseInt("00F3ADA3",16);
这样使用这个 HEX 的一部分时,它工作正常,没有例外。
是否有某种允许转换的最大十六进制长度类型,或者我使用的错误请纠正我。
您尝试解析的值太大,无法用整数表示。要正确解析它,您必须解析它很长时间。
如果你把它替换成下面的,那么它就可以了。
Long.toBinaryString(Long.parseLong("001F012900F3ADA3", 16));
int的最大值为2147483647
,值:001F012900F3ADA3
转换为二进制数为8726999899286947
。
我正在尝试将十六进制转换为十进制和二进制,但对于给定的十六进制 "001F012900F3ADA3"
得到相同的错误,但使用任何在线转换器将相同的十六进制转换为十进制和二进制。
Integer.parseInt("001F012900F3ADA3",16); // to decimal conversion
Integer.toBinaryString(Integer.parseInt("001F012900F3ADA3", 16)); // to binary conversion
当我像 Integer.parseInt("00F3ADA3",16);
这样使用这个 HEX 的一部分时,它工作正常,没有例外。
是否有某种允许转换的最大十六进制长度类型,或者我使用的错误请纠正我。
您尝试解析的值太大,无法用整数表示。要正确解析它,您必须解析它很长时间。
如果你把它替换成下面的,那么它就可以了。
Long.toBinaryString(Long.parseLong("001F012900F3ADA3", 16));
int的最大值为2147483647
,值:001F012900F3ADA3
转换为二进制数为8726999899286947
。