0

我有一个 Java Swing 应用程序 JAR 作为 JSP 中的小程序运行。在其中一个 JTextfields 中,用户粘贴了日语字符,结果显示为乱码。但是,当我运行与小程序相同的应用程序时,它显示得很好。JSP 的内容根据 META 标记表示为 UTF-8。

4

2 回答 2

1

我猜有几种可能。当显示器认为它是有效字符时,可能会显示框,但无法找到与该字符对应的字形(字体中的条目)。

您是否可能没有安装包含这些字符的字体?甚至小程序无法将这些代码点映射到系统中的某种字体?

如果问题是由于预期和实际字符编码之间的不匹配造成的,我认为它不仅仅是盒子,而且还可能包含不正确的字符,即 gobbledy-gook。

于 2009-02-27T14:11:31.340 回答
1

我对日语本地化问题有一点经验,所以我会尝试提供一个可能的解决方案(虽然很晚)。

JSP 内容编码与applet 使用的编码无关。小程序使用用户默认用户 JRE/JVM 设置。

假设日语至少在一个屏幕上出现在用户面前,这是复制和粘贴管理器不知道如何复制文本的问题(它复制文本的字节,但在粘贴时重新组装字节不正确):

将诊断屏幕添加到应用程序并在您的计算机和用户计算机上记录以下系统属性:

System.getProperty("xx");
  • 文件编码
  • 用户国家
  • 用户语言

在小程序启动时,您应该能够使用您自己的正确设置覆盖属性,以在所有用户 PC 上获得正确的行为。

于 2010-04-21T09:52:55.050 回答