Struts应用程序中的Unicode问题

时间:2011-04-23 17:31:23

标签: unicode struts

我的struts项目中会显示一些国际角色。我已将角色存储在我的数据库中。因此,当我从DB将其检索到JSP时,它会显示类似

的内容

नेपा我已经花了整整2天时间通过不同的论坛来解决它,但我找不到合适的解决方案。所以这是我最后的希望。我希望有人会透过我的光。

如果我转到http://www.motobit.com/util/charset-codepage-conversion.asp链接并将iso-8859-1字符नेपा添加到其中并进行转换,则会显示我的国际字符。

由于

2 个答案:

答案 0 :(得分:0)

  

这不是存储在DB 'नेपा'

中的内容

这就是我所说的html实体。当您使用jstl c:out输出此字符串时,它将再次转义&符号以避免html注入和跨站点脚本攻击。然后,呈现页面的html源代码如下所示:

नेपा

这意味着浏览器将逐字呈现&符号。

您链接的网页似乎提供未转换的字符串作为txt下载,因为只包含ascii范围内的字符。如果您使用浏览器打开此文件,它可能会尝试将其解释为html并显示相应的国际字符。

您应该调查数据库中已有编码字符的原因,最好将实际字节存储在定义的编码中,例如utf-8。

答案 1 :(得分:0)

当您将数据插入MySql数据库时,您是否对该字段使用NVARCHAR类型,如果是,您是否在table.FieldName之前放置了N

您必须以Unicode方式将其放入数据库中,将 N 作为字段名称