当前位置: 首页 > 知识库问答 >
问题:

在java中将十六进制字符串转换为十六进制整数

邹玄裳
2023-03-14

我有十六进制字符串,例如“0x103E”,我想将其转换为整数。意思是String no="0x103E";toint hexNo=0x103E;我尝试了Integer.parseInt("0x103E",16);但它给出了数字格式异常。我如何实现这一点?

共有2个答案

荆亦
2023-03-14

无需删除“0x”前缀;只需使用Integer.decode而不是Integer.parseInt

int x = Integer.decode("0x103E");
System.out.printf("%X%n", x);
弓胜泫
2023-03-14

您只需要省略“0x”部分(因为它实际上不是数字的一部分)。

您还需要确保您正在解析的数字实际上适合Java为4字节长的整数,因此它需要短于8位作为十六进制数。

 类似资料:
  • 问题内容: 我写了一些代码将十六进制显示字符串转换为十进制整数。但是,当输入类似100a或625b(带有字母的东西)时,我得到了这样的错误: java.lang.NumberFormatException:对于输入字符串:java.lang.Integer.parseInt(未知源)处的java.lang.NumberFormatException.forInputString(未知源)处为“ 1

  • 我正在写一个Rust程序,读取I2C总线并保存数据。当我读取I2C总线时,我会得到十六进制值,比如,,等等。 现在,我只能将其作为字符串处理并按原样保存。有没有办法把它解析成一个整数?它有内置的功能吗?

  • 问题内容: 我在ex中有整数。16,我正在尝试将此数字转换为十六进制数字。我试图通过使用十六进制函数来实现此目的,但是每当您向十六进制函数提供整数时,它都会返回十六进制数字的字符串表示形式, 有人可以告诉我如何将字符串格式的十六进制数字转换为简单的十六进制数字。 谢谢!! 问题答案:

  • 问题内容: 要将String转换为十六进制,我正在使用: 在此处投票最高的答案中对此进行了概述:在Java中将 字符串转换为十六进制 我该如何反向执行,即将十六进制转换为字符串? 问题答案: 您可以从转换后的字符串中进行重构,这是一种实现方法: 另一种方法是使用,从包: 单元测试以验证: 注:领先剥离的仅仅是必要的,因为的你的填充方法。如果您不介意将其替换为简单的,则可以将此行放在:

  • 我用JSON格式存储了很多颜色。我使用rootbeer via gulp将它们转换为sass映射,可以由SCSS处理: 至 我可以很好地使用语法中的颜色,但一旦应用了任何颜色函数,如,编译器就会失败,因为颜色类型完全消失了。 即使使用也不允许sass将其视为字符串,但它需要是一种颜色。 我的问题是,是否有任何方法可以让我强制编译器将此作为一种颜色来处理呢?另一种方法是省略所有内置颜色函数的使用。

  • 问题内容: 我试图在Java中将类似“ testing123”的字符串转换为十六进制形式。我目前正在使用BlueJ。 并将其转换回去,除了向后转换,是否一样? 问题答案: 这是将其转换为十六进制的简短方法: