JasperReports
に特殊文字をエスケープする方法はありますか?JasperReportsで特殊文字をエスケープする方法は?
私はジャスパー報告のように特殊文字をエスケープしたいと思います: - é、â、è、^、@のように、この文字をエスケープできる方法はありますか?
JasperReports
に特殊文字をエスケープする方法はありますか?JasperReportsで特殊文字をエスケープする方法は?
私はジャスパー報告のように特殊文字をエスケープしたいと思います: - é、â、è、^、@のように、この文字をエスケープできる方法はありますか?
これを試してみてください。代わりに 'E' 使用の
など
あなたは<, >
のような特殊なXML文字をエスケープしたい場合は、CDATAを使用することができます。
<staticText>
<reportElement x="0" y="0" width="100" height="14"/>
<textElement/>
<text><![CDATA[This is a test:< ]]></text>
</staticText>
é, â, è
のような特殊文字は、jrxmlファイルの先頭に文字エンコーディングを指定してファイルを正しくエンコードすると効果的です。
<?xml version="1.0" encoding="UTF-8"?>
エクスポートされたレポートに無効な文字が表示される場合は、ジャスパーのエクスポートを確認する必要があります。たとえば、pdfエクスポートの場合は、hereという情報があります。
.jrxmlファイルが.jasperファイルにコンパイルされ、使用されたエンコーディングに関する情報が失われるため、UTF-8エンコーディングでjrxmlファイルを保存しても問題は解決しません。 最終レポートには特殊文字がありません。
CDATA XMLタグ内に/ u00XXエスケープ文字を使用すると問題は解決します。 この場合、特殊文字は出力PDFファイルにあります。 CDATAタグの外側には、正しく解釈されないエスケープ文字があります。
私はオラクルからの文字列を持っている、短い私はすべての特殊文字を置き換えたいそれは可能ですか?それのための任意のAPIはありますか? – Garudadwajan
次に、dbのエンコーディングを確認してから、jasperreportsテンプレートのエンコーディングを確認してください。 oracle jdbcには、いくつかの特殊なms単語の文字をUnicodeに変換する際に問題があることに注意してください –