在Java中打印'\ u0000'

时间:2012-03-29 03:58:32

标签: java unicode char

当我跑步时

char c= '\u0000'; 
System.out.println(c);
在Eclipse中,它会打印一个小方块,这意味着一个空字符 但是当我在CLI中运行它时会打印'a' 然后我在其他计算机上运行它,一些打印'a',一些打印空间。

为什么会发生这种情况?

我的操作系统是Windows 7 professional-32bit。其他系统是windows xp 我的java版本是jdk_1.6.0update12。

1 个答案:

答案 0 :(得分:2)

它不会为我打印:

public class Mkt {
 public static void main(String[] args) {
    char c= '\u0000'; 
    System.out.println("-" + c + "-");
  }
}

$ javac Mkt.java && java Mkt
--

Ubuntu 11.10:

$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)

要检查的事项/尝试:

  • 更改终端窗口的字体
  • 您是否在计算机上尝试过其他Java版本?
  • 你的机器和你试过的其他机器有什么不同吗?
  • Cygwin
  • 中试用
  • 尝试一些不同的控制台模拟器,例如Console
  • 重定向到文件(java Mkt > some_file.txt)并查看其中的内容,最好使用一些十六进制编辑器
  • 制作一个小型Swing应用程序并在JTextArea中显示该应用程序以查看它是否显示相同的
  • \u0001显示什么?