【发布时间】:2019-06-06 12:55:14
【问题描述】:
我在字符串中有可用的十六进制数,我想通过删除前导零来缩短它。我需要用 Java 来做
例如:
0000000000000000000000000A000000 -> 0x0A000000
0x0000000000000000000000000A000000 -> 0x0A000000
000000000000000000000000C0A80000 -> 0xC0A80000
0x000000000000000000000000C0A80000 -> 0xC0A80000
目前下面的代码抛出 NumberFormatException 异常
System.out.println(Long.toHexString(Long.parseLong("0x0000000000000000000000000A000000")));
【问题讨论】:
-
看起来像他的。
-
@Lino 在十六进制数字前加上
0x在许多编程语言(包括 Java)中很常见 -
@GyroGearless 文字有前缀 (
int i = 0xABC;),但不是字符串 AFAIK (Long.toHexString(0x11) -> 11)