如何将数字格式化为hex字符串?
我想将int数字格式化为hex字符串。 System.out.println(Integer.toHexString(1));
打印1
但我希望它为0x00000001
。 我怎么做?
试试这个
System.out.println(String.format("0x%08X", 1));
您可以使用String.format将整数格式化为hex字符串。
System.out.println(String.format("0x%08X", 1));
也就是说,用零填充,并使总宽度为8.为您转换为hex。 上面的行给出: 0x00000001
和
System.out.println(String.format("0x%08X", 234));
给出: 0x000000EA
从Java的Formatter类中记录的格式化语法:
Integer intObject = Integer.valueOf(1); String s = String.format("0x%08x", intObject); System.out.println(s);
您可以在PrintStream上使用java.util.Formatter或printf方法 。
我不太了解Java,但必须有一种方法可以将toHexString函数的输出填充为’0’到8的长度。如果“0x”始终在开头,那么只需要字符串到开头。