在Intellij Idea调试器中查看unicode字符串

时间:2013-08-28 06:21:30

标签: debugging unicode intellij-idea

如何在Intellij Idea调试器数据视图中查看Unicode编码的字符串? 例如考虑以下代码

String str = "सुझाव"; //some Unicode string: utf-8
String str1 = "\u0938\u0941\u091d\u093e\u0935";
System.out.println(str);

无法查看调试器的变量str-in数据视图,它显示垃圾值。 即使设定值显示正确的值。

enter image description here 有什么建议/解决方法吗?

可能在某处遗漏了一些编码设置。

4 个答案:

答案 0 :(得分:1)

检查项目编码。我有同样的问题。 Idea在WIN-1252中显示变量内容编码。 在Editor > File Encodigs中的版本中,您有IDE EncodingProject Encoding。将Project Encoding更改为UTF-8后,一切正常。

答案 1 :(得分:1)

问题出在调试器字体

由于您可以在代码编辑器中查看您的unicode字符串,这意味着您的符号和文件编码一切都很好。

字体可能没有每个unicode字符的字形。这就是问题所在。代码编辑器和调试器有不同的字体。调试器的字体没有这些符号的字形。不幸的是,事实证明你无法改变调试器的字体。

我刚刚解决了类似的问题:Why Intellij IDEA doesn't display symbol?

答案 2 :(得分:1)

空白方块表示IDE字体不支持这些特征。更改IDE字体应该解决它(文件 - > 设置 - > 外观和行为 - > 外观

答案 3 :(得分:0)

这应该有效。我复制了你的代码,我可以在调试器中看到你的字符。

也许您的文件编码错误 - 您可以查看intellij窗口的右下角,是否说UTF-8或其他?

或者,如果您使用转换为Basic Latin 操作(将光标放在字符串上并使用alt-enter),这是否有用?

    String str = "\u0938\u0941\u091d\u093e\u0935"; //some Unicode string: utf-8