我在BIRT Eclipse中有一个yyyy-mm格式的输入参数,我需要找到所选输入参数值的最后一天,并将其转换为mm/dd/yyyy格式。例如,如果用户选择-2022-02,那么我需要找到最后一天-02/28/2022,并将其传递给另一个过滤器。
我尝试使用下面的Java表达式,但不确定问题出在哪里
有人能帮帮忙吗。我在这个问题上已经纠结了好几个星期了。
var mydt1 =params["Period To"].value
importPackage(Packages.java.util);
importPackage(Packages.java.text);
df = new SimpleDateFormat("yyyy - MM");
myDate = df.parse(mydt1);
cal = new Calendar.getInstance();
cal.setTime(myDate);
cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(cal.DAY_OF_MONTH));
lastDate = cal.getTime();
datefm = new SimpleDateFormat("MM/dd/yyyy");
ddd = datefm.format(lastDate);
return ddd;
1条答案
按热度按时间tkclm6bt1#
如果您有
DateTime
参数,请尝试此选项:首先,我们得到这个月的第一天,然后加上一个月,然后减去一天,得到这个月的最后一天。