Java填充地址为64位

时间:2013-08-07 08:18:50

标签: java string formatting

我正在处理一些内存地址,我需要将其填充到一个完整的64位长度。举个例子:

0x7ffe0 - needs to be padded to: 0x000000007ffe0000

基本上每个值都需要填充到16位,并在正确的位置使用零。

我知道String.format可能会这样做,但我不确定DecimalFormat是否更快,或更好的方法。

非常感谢任何建议。

由于

更新

这是内存信息存储在文件中的方式:

enter image description here

基本上前8个字节是范围的开始,最后8个是范围结束的位置。

我可以访问的另一个程序向我显示完整的64位填充地址,所以我不完全确定它是如何执行填充的。

2 个答案:

答案 0 :(得分:1)

试试这个

String s = String.format("0x%016x", 0x7ffe0);

DecimalFormat仅适用于小数而非十六进制

答案 1 :(得分:1)

尝试这样的事情

    System.out.printf("0x%016x", 0x7ffe0);