JasperReports:动态 I18n

nKo*_*ito 2 java jasper-reports

例如,我在 ResourceBundle 中有这样的字符串:

some.string.1=String 1
some.string.2=String 2
some.string.3=String 3
Run Code Online (Sandbox Code Playgroud)

在 JasperReports 中,我必须根据其他一些参数 $P{t} 打印这些字符串。我可以这样做 - 将这样的表达式放入字段:

($P{t} == 1 ? $R{some.string.1} : ($P{t} == 2 ? $R{some.string.2} : $R{some.string.3}))
Run Code Online (Sandbox Code Playgroud)

有没有办法以这种方式实现它:

$R{some.string.$P{t}}
Run Code Online (Sandbox Code Playgroud)

?

谢谢

mda*_*man 5

用这个:

str("some.string." + $P{t})
Run Code Online (Sandbox Code Playgroud)

我用过类似的东西……虽然我不记得使用过这个。它应该适用于您所描述的内容。

  • 呃...请允许我修改我无用的答案。我的意思是“str”而不是“msg”。内置的 str() 方法等效于 $R{} 语法。但它是动态的,所以你应该能够得到你需要的东西。我已经更新了我的答案。 (2认同)