如何在Eclipse Java调试器中将字节数组显示为十六进制字节或无符号十进制数的数组?

时间:2010-10-15 04:14:28

标签: java eclipse types debugging

我想在Eclipse(Helios Release,build id:20100617-1415)Java调试器中查看一个字节数组,作为十六进制字节数组(每个2位数)或无符号十进制数?那可能吗?怎么样?

例如,我想显示:

alt text

... as:0,48,71,22,139,166,...

...或者:0x00,0x30,0x47,0x16,0x8B,0xA6,......

(这是与“How do I display a byte array as a char array in the Eclipse Java debugger?”类似的问题。)

5 个答案:

答案 0 :(得分:25)

不完全符合你想要的但是正如我在DEBUG MODE中所知,有一个原始类型的选项(int,long,...)。

  

切换到Debug透视图   在“变量”视图中单击   “菜单”项目(之前的三角形项目)   最小化)并选择“Java Primitives ...”。   
在对话框中,您可以选择Hex   视图,Ascii视图和未签名(for   字节)。

找到这个,也许有帮助:Inside the Memory View

在3.7(可能更早),进入首选项,在过滤区域中键入“原始显示”,然后选择显示十六进制值。

答案 1 :(得分:7)

在Eclipse Kepler 4.3中更新了答案:

在Debug透视图中,Variables选项卡将在右上角显示View Menu(向下三角形),Minimize(一条线)和Maximize(一个窗口)图标。点击查看菜单> Java> Java偏好...用于显示菜单。在此菜单中选择Java>调试>原始显示选项。选中“显示十六进制值”,然后单击“确定”。您现在应该在“变量”选项卡中的括号中看到十六进制值。

答案 2 :(得分:5)

您可以添加观察表达式:

   StringBuilder sb = new StringBuilder();
    for(byte b: buf) {
      sb.append(String.format("%02x, ", b & 0xff));
    }
    sb.setLength(sb.length() - 2);
    return "[" + sb + "]";

答案 3 :(得分:4)

在IntelliJ IDEA 14中,可以使用设置→调试器→数据视图→Java→显示基元的十六进制值来启用在调试器中显示数组中的十六进制值。

答案 4 :(得分:0)

对于eclipse neon IDE

以十六进制格式显示值

转到 Windows - > 偏好设置 - > Java - > 调试 - > 原始显示选项 - >显示十六进制值(byte,short,char,int,long)

启用该选项并按确定

注意:这适用于调试模式