我遇到了 JasperReports 的问题。我将字符串值传递给报表。我传递的每个值都包含一个特定的代码,例如“pre:001”,“ab:002”,“lv:003”。
代码 - “前”,“ab”,“lv”
正如我上面提到的,每个代码和值可以通过“:”符号单独标识。 在 Java 中,我使用以下代码来分隔代码和值;
a = “pre:001”;
String[] b = a.Split(“:”,2);
System.out.println(b[0]); // code
System.out.println(b[1]); // value
问题
我需要将组合值(代码+值)传递给报表,但文本字段应该只显示值部分。
例如:
输入 - “pre:010”
输出 - “010”
答案 0 :(得分:2)
应该在text field expression
字段A
中:
$F{A}.split(":",2)[1].trim()
答案 1 :(得分:0)
如果您正在使用ireport将表达式添加到文本字段,例如属性菜单中的{field Name} .substring()。
答案 2 :(得分:0)
分割字段'字段名称'用' |'分隔符并获取第一个元素
$F{fieldname}.toString().split("\\|")[0]