Ste*_*eod 1 java macos character-encoding
在带有Java 1.5的Mac OS X 10.5上,我有这段代码片段.
public static void main(String[] args) {
String name = "???????";
System.out.println("name = " + name);
}
Run Code Online (Sandbox Code Playgroud)
输出是:
name = ???????
Run Code Online (Sandbox Code Playgroud)
我希望看到:
name = ???????
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
这里有两个潜在的问题.首先,您的源代码中包含西里尔字符.这意味着您必须确保用于存储文件的编码与编译器使用的编码相同.查看javac联机帮助页以查看其默认编码是什么,和/或如何指定特定编码.或者,在字符串中使用Unicode转义符.
第二种可能是您的终端字体不显示西里尔字符.我不认为这不过是发生了什么,因为(1)你能看到在源代码中的字符,和(2)我相信失踪字形呈现为块,不正确的编码,渲染为问号.
要进行测试,只需使用正确的Unicode转义替换您的字符串,并验证字符在屏幕上呈现.
| 归档时间: |
|
| 查看次数: |
5978 次 |
| 最近记录: |