我有:
int number = 0x00000024;
它没有问题,但现在我用 de 格式得到它:
<MAN>
<NAME hexa="0x00000001"/>
</MAN>
我尝试用以下方法解析六进制:
Integer.parseInt(parser.getAttributeValue(0), 16)
但它说:
Unable to parse '0x00000001' as integer
有谁知道发生了什么?
删除0x
:
Integer.parseInt(parser.getAttributeValue(0).substring(2), 16)
基于如何在 java 中将十六进制字符串转换为 long 中的答案?, 你要:
int num = Long.decode(parser.getAttributeValue(0)).intValue();