Java中的外语字符解码**& iacute; **

时间:2014-09-18 13:16:23

标签: java jasper-reports

我想在jasper报告中显示外语字符。报告将文本传递给java代码以进行RTF格式化。不幸的是,mysql数据库返回解码后的字符串,如下所示,删除了空格

&安培; iacute;

我想要显示的是

I

有关如何使用java的建议吗?

text:bebidafría

来自数据库: bebida fr& iacute;一个

3 个答案:

答案 0 :(得分:2)

这是HTML实体。您可以使用apache commons库中的StringEscapeUtils.unescapeHtml4

仍然需要了解您的RTF如何处理Unicode。

答案 1 :(得分:1)

如果我理解你的问题,那么你可以使用unicode文字,

System.out.println("bebida fr\u00EDa");

输出是(请求的)

bebida fría

答案 2 :(得分:1)

检查数据库表编码。您也可以尝试使用正确的编码对字符串进行编码。

 ByteBuffer encode = Charset.forName("UTF-8").encode(myString);
 String encodedStr = new String(encode.array());