Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java将unicode字符打印到bash shell(mac OsX)_Java_Bash_Unicode_Utf 8_Character Encoding - Fatal编程技术网

java将unicode字符打印到bash shell(mac OsX)

java将unicode字符打印到bash shell(mac OsX),java,bash,unicode,utf-8,character-encoding,Java,Bash,Unicode,Utf 8,Character Encoding,我在java 1.6中有以下代码: System.out.println("\u00b2"); 但是在OSX10.6的bash上,我得到的是问号,而不是unicode字符 实际上,我想在扩展ascii码上打印字符176177178(看这里),以便在bash终端上创建一些艺术 有什么想法吗 谢谢bash是UTF8语言环境吗?键入locale命令并查看您的语言是否合适(例如类似于*en_GB.UTF-8*)。如果没有,请更新LANG的值并重试。首先,您需要确保终端会话中的字符编码与java应用程序

我在java 1.6中有以下代码:

System.out.println("\u00b2");
但是在OSX10.6的bash上,我得到的是问号,而不是unicode字符

实际上,我想在扩展ascii码上打印字符176177178(看这里),以便在bash终端上创建一些艺术

有什么想法吗


谢谢

bash是UTF8语言环境吗?键入locale命令并查看您的语言是否合适(例如类似于*en_GB.UTF-8*)。如果没有,请更新LANG的值并重试。

首先,您需要确保终端会话中的字符编码与java应用程序的输出相匹配。您很可能想要UTF-8,我相信它是OSX下的标准配置


接下来,您需要确保终端会话中使用的字体确实包含希望看到的字符。这些似乎很少见,可能不是所有字体都可用。

验证
终端>首选项>编码是否已选中UTF-8。

以下代码在Mac OS X 10.6.7上启用UTF-8的Terminal.app中对我有效:

# code taken from: 
# "Print Unicode characters to the Terminal with Java",
# http://hints.macworld.com/article.php?story=20050208053951714

echo '
import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
class Test {
  public static void main (String[] argv) throws UnsupportedEncodingException {
  String unicodeMessage = "\u00b2\u2591\u2592\u2593";
  PrintStream out = new PrintStream(System.out, true, "UTF-8");
  out.println(unicodeMessage);
  }
}
' > test.java

javac test.java
java Test

实际上,这些unicode字符就可以了。。U+2591░灯罩U+2592▒中色调U+2593▓深色,但“\u2592”似乎也不起作用。这取决于您的终端设置(以及Java对这些终端设置的看法),而不是外壳。请注意,没有扩展ASCII。这一页可能意味着。