【发布时间】:2013-03-04 15:35:44
【问题描述】:
我有一个包含日语单词的数据库。另外,我有读取这些单词并将它们放入 JTextArea 的算法。 问题是我看到的是矩形而不是日本标志。 但是当我从 JTA 复制这样一组矩形 (ctrl+c) 并将它们放入例如。 TotalCommander 或 Winword 文件的命令输入,出现的标志正确显示。但是只在Win7下。 因为我在winXP下的虚拟机上运行Eclipse,所以我有能力复制矩形也可以在winXP下命令输入TotalCommander。在我的 Java 应用程序中仍然存在矩形。 这意味着 JTA 中有关于特定标志的信息,但 JTA 无法解释此信息。
当然我已经安装了正确的字体。
我尝试了很多字体方法:
textArea.setFont(new Font(blablabla));
和类似的,但没有效果。 我该怎么办?
【问题讨论】:
-
我不同意。这顶多是类似的。除了解决方案不起作用。请注意,我不需要从键盘输入任何文本到 JTestArea。我只需要从外部流中显示它。
-
请提供Short, Self Contained, Correct (Compilable), Example。问题可能是,您的文件编码与 UTF8 不匹配。您可以以编程方式将 JTextArea 的内容设置为日文字符吗?那么字体本身就不是问题了。我也用 Windows XP 尝试过它,它在这里工作得很好。 ideone.com/GDfDbb
-
提供代码并不容易,因为我尝试阅读 MySQL DB (InnoDB) 的很大一部分。我不认为这是 UTF 问题。在这个数据库中使用了俄语、德语、波兰语、葡萄牙语,它们没有问题。只有日语。我显然尝试使用 Locales/setFont 甚至其他技巧,但它什么也没给我。我使用这种字体:dafont.com/japanese.font 你能给我一些例子,你如何使用你引用的主题中的代码吗?
-
是的,请看下面我的回答。该字体不包含所有日文字符。
标签: java database jtextarea truetype