39

私のマシンにインストールされているウィンドウにはロケールがen_AUあり、それが JasperReports が使用するものです。管理者を含むすべてのユーザーのロケールを変更しようとしましたが、まだ使用していますen_AU

そのロケールを変更するにはどうすればよいですか? REPORT_LOCALEレポートのパラメーターを変更することはできますか?

4

3 に答える 3

60

ロケールは、JRXML ではなく、実行中に設定されます。

Java を使用REPORT_LOCALEして、レポートのパラメーター マップのパラメーターを設定します。例えば:

InputStream reportTemplate = getReportTemplate();
JRDataSource dataSource = getDataSource();

java.util.Map parameters = getParameters();
java.util.Locale locale = new Locale( "en", "US" );
parameters.put( JRParameter.REPORT_LOCALE, locale );

JasperFillManager.fillReport( reportTemplate, parameters, dataSource );

Jaspersoft Studio を使用して、プロジェクト プロパティ ダイアログを開き、レポート実行領域を表示します。

プロジェクトのプロパティ

iReport を使用して、[全般] タブの [レポート実行オプション] セクションにある [オプション] ウィンドウでレポートのロケールを設定します。これにより、実行時にレポートのロケールが設定されます。

于 2009-04-21T12:48:21.517 に答える
0

JasperFillManagerコードを変更したくない場合は、コードを実行する JVM でロケールを設定できます。

java -Duser.language=de -Duser.country=CH ...
于 2021-01-22T16:25:26.520 に答える