kak*_*shi 7 java internationalization
是否可以用Java编写一个能够正确显示日文字体的GUI,而不管它运行的操作系统的语言设置如何?
我想写一个能够做到这一点的程序,但我不知道如何开始这个.任何建议都将是一个巨大的帮助!
这里的语言设置不是问题.字体是.
Java肯定可以处理日文文本,无论系统设置是什么,如果开发人员没有陷入依赖于平台默认编码的陷阱,使用类似的东西FileReader,或new String(byte[]).
但要实际显示日文文本,您需要一个具有日文字符的字体,并且字体不是Java的一部分.根据操作系统的不同,支持日语的字体可能是默认安装的一部分,或者可能会提示用户根据需要安装它们,或者可能必须手动安装它们.
无论操作系统是否安装了字体,Java都可以轻松显示日语,但这仅适用于Swing应用程序.使用控制台窗口的任何内容都需要在操作系统中安装字体.
脚步:
1)从这里下载其中一种truetype字体:http://www.wazu.jp/gallery/Fonts_Japanese2.html
2)使用以下代码允许您的swing客户端使用您的字体:
InputStream fontStream = getClass().getResourceAsStream("/locationoffontonclasspath/myfontname.ttf");
Font japaneseEnabledFont = null;
boolean japaneseDisplayEnabled = false;
try {
japaneseEnabledFont = Font.createFont(Font.TRUETYPE_FONT, fontStream);
GraphicsEnvironment.getLocalGraphicsEnvironment().registerFont(japaneseEnabledFont);
japaneseDisplayEnabled = true;
} catch (Exception e) {
// handle exceptions here
} finally {
if (fontStream != null) {
try {fontStream.close();} catch (Exception e1) {}
}
}
if (japaneseDisplayEnabled) {
.....
}
Run Code Online (Sandbox Code Playgroud)
此外,如果您希望在源代码中使用日语文字,则必须使用-Dfile.encoding = utf-8进行编译.如果使用IDE进行编译,则可以在以下屏幕上更改设置(右键单击项目并选择属性以获取此窗口):screenshot
| 归档时间: |
|
| 查看次数: |
4434 次 |
| 最近记录: |