我有一个报告和一个带有法国国际化资源包的子报告。没有引发错误或警告,但是当我使用此报告创建pdf时,由于编码错误(é为é是一个示例),会出现奇怪的字符。
我仍在调查这个问题,但我猜这与子报道有关。
几个准则:
答案 0 :(得分:4)
好的问题解决了:
在java文件中,在覆盖resourcebundle上所需的任何内容之后(对我来说:UTF-8作为输入编码),你可以这样做:
reportParamMap.put(JRParameter.REPORT_RESOURCE_BUNDLE, resourceBundle);
好吧,在JRXML文件中,不要忘记将资源包传递给需要它的子报告:
<subreport>
<reportElement />
<subreportParameter name="REPORT_RESOURCE_BUNDLE">
<subreportParameterExpression>
<![CDATA[$P{REPORT_RESOURCE_BUNDLE}]]>
</subreportParameterExpression>
</subreportParameter>
<dataSourceExpression/>
<subreportExpression/>
</subreport>
答案 1 :(得分:1)
在您的属性文件中,您是否尝试过使用字符/特殊字符的代码?
例如,字符“é
”必须为\u00E9