Jasper reports 将编号替换为月份名称
我有一种包含数字的数据Jasper reports 将编号替换为月份名称,jasper-reports,Jasper Reports,我有一种包含数字的数据 1,2,3,4,5,6,7,8,9,10,11,12,表示月份 我想更改它,以便在预览报告时显示它 January February March April May June July August November December 我尝试过使用replace() 当我运行它时,它不工作 有什么建议吗?这会解决你的问题。我在这里所做的是将源字符串拆分为string的ArrayList,然后使用switch case将相应月份的名称连接到显示为输出的新字符串 imp
1,2,3,4,5,6,7,8,9,10,11,12,
表示月份
我想更改它,以便在预览报告时显示它
January
February
March
April
May
June
July
August
November
December
我尝试过使用replace()
当我运行它时,它不工作
有什么建议吗?这会解决你的问题。我在这里所做的是将源字符串拆分为
string
的ArrayList
,然后使用switch case
将相应月份的名称连接到显示为输出的新字符串
import java.util.*;
class abc
{
public static void main (String[] args)
{
String str = "1,2,3,4,5,6,7,8,9,10,11,12,";
String res = "";
List<String> list = new ArrayList<String>(Arrays.asList(str.split(",")));
for (String s : list)
{
switch (s)
{
case "1":
res += "January\n";
break;
case "2":
res += "February\n";
break;
case "3":
res += "March\n";
break;
case "4":
res += "April\n";
break;
case "5":
res += "May\n";
break;
case "6":
res += "June\n";
break;
case "7":
res += "July\n";
break;
case "8":
res += "August\n";
break;
case "9":
res += "September\n";
break;
case "10":
res += "October\n";
break;
case "11":
res += "November\n";
break;
case "12":
res += "December\n";
break;
default:
System.err.println("Invalid output");
}
}
System.out.println(res);
}
}
import java.util.*;
abc班
{
公共静态void main(字符串[]args)
{
字符串str=“1,2,3,4,5,6,7,8,9,10,11,12”;
字符串res=“”;
List List=newarraylist(Arrays.asList(str.split(“,”));
用于(字符串s:列表)
{
开关
{
案例“1”:
res+=“一月\n”;
打破
案例“2”:
res+=“二月\n”;
打破
案例“3”:
res+=“三月\n”;
打破
案例“4”:
res+=“四月\n”;
打破
案例“5”:
res+=“可能”\n;
打破
案例“6”:
res+=“六月\n”;
打破
案例“7”:
res+=“七月\n”;
打破
案例“8”:
res+=“八月\n”;
打破
案例“9”:
res+=“九月\n”;
打破
案例“10”:
res+=“十月\n”;
打破
案例“11”:
res+=“11月\n”;
打破
案例“12”:
res+=“12月\n”;
打破
违约:
System.err.println(“无效输出”);
}
}
系统输出打印项次(res);
}
}
您可以使用文本字段表达式,用字段名替换$V{Month}
<textfieldexpression class="java.lang.String">
(
$V{Month}.equals("1") ? "January" :
$V{Month}.equals("2") ? "February" :
$V{Month}.equals("3") ? "March" :
$V{Month}.equals("4") ? "April" :
$V{Month}.equals("5") ? "May" :
$V{Month}.equals("6") ? "June" :
$V{Month}.equals("7") ? "July" :
$V{Month}.equals("8") ? "August" :
$V{Month}.equals("9") ? "September" :
$V{Month}.equals("10") ? "October" :
$V{Month}.equals("11") ? "November" : "December"
)
</textfieldexpression>
(
$V{Month}.等于(“1”)?“一月”:
$V{Month}.等于(“2”)?“二月”:
$V{Month}.等于(“3”)?“March”:
$V{Month}.等于(“4”)?“April”:
$V{Month}.等于(“5”)?“May”:
$V{Month}.等于(“6”)?“June”:
$V{Month}.等于(“7”)?“July”:
$V{Month}.等于(“8”)?“八月”:
$V{Month}.等于(“9”)?“9月”:
$V{Month}等于(“10”)?“十月”:
$V{Month}.等于(“11”)?“11月”:“12月”
)
您使用的是什么语言?请发布您尝试过的相关代码。它是java。我通过表达式Editoris edit.replace()输入字符串或列表???@CrakC我尝试过。replace(“CO”,“Complete”)@SalmaSulthanah plz向我们显示字段jrxml代码。您可以使用文本字段表达式来执行此操作。问题是关于JasperReports的。您的答案不适用(不使用Scriptlet)
<textfieldexpression class="java.lang.String">
(
$V{Month}.equals("1") ? "January" :
$V{Month}.equals("2") ? "February" :
$V{Month}.equals("3") ? "March" :
$V{Month}.equals("4") ? "April" :
$V{Month}.equals("5") ? "May" :
$V{Month}.equals("6") ? "June" :
$V{Month}.equals("7") ? "July" :
$V{Month}.equals("8") ? "August" :
$V{Month}.equals("9") ? "September" :
$V{Month}.equals("10") ? "October" :
$V{Month}.equals("11") ? "November" : "December"
)
</textfieldexpression>