我如何在java中使用特殊字符? 它们属于Cp1252字符编码。 我尝试在消息中使用它们,但我无法使用它们。
字符如:“︻ー┳=デ”
答案 0 :(得分:3)
使用关联的UTF值,例如在http://www.fileformat.info/info/unicode/char/search.htm上查找'デ'可以得到\ u30C7的值,以便您可以:
System.out.println( "\u30C7" ); // as string
System.out.println( '\u30C7' ); // as char
答案 1 :(得分:0)
您可以在PrintWriter
周围包裹System.out
,以明确设置字符集。
final String charset = "UTF-8";
PrintWriter out = null;
try {
out = new PrintWriter(new OutputStreamWriter(System.out, charset), true);
} catch(UnsupportedEncodingException e) {
e.printStackTrace();
}
至于?
作为角色显示 - 它实际上取决于您输出标准输出流的位置。在标准的Ubuntu终端中 - 它可能看起来不错(我可以稍后测试)。在Windows' cmd
但是,您应手动设置代码页Chcp
并提供这些字符附带的字体。
同样适用于Eclipse,它的控制台字符集是UTF-8我相信,但如果你没有日文字符的字体,它不会帮助你。
答案 2 :(得分:0)
在Java代码中使用带有特殊字符的字符串文字时,还必须通知Java编译器编码Java文件本身的编码。
假设您编辑了Java文件(包含日文文本文本)并将其保存为UTF-8文件。您必须,然后告诉编译器将源文件视为UTF-8文档:
javac -encoding UTF-8 file1 file2 ...
否则,Java编译器将假定使用操作系统的默认编码对Java文件进行编码,这不一定是您希望它执行的操作。