xslt表示比当前日期早90天的日期

时间:2013-07-25 10:56:06

标签: date xslt date-format

之前我有一个字段需要获取当前日期,因此在这种情况下我使用了以下内容。

<value><xsl:value-of select="java:format(java:java.text.SimpleDateFormat.new('dd-MM-yyyy'), java:java.util.Date.new())"/></value>

现在,我要求我必须从今天开始不超过90天的日期。请建议我可以基于上面的代码完成,或者你有任何其他方式使用xslt吗?

2 个答案:

答案 0 :(得分:1)

如果您使用的是XSLT 2.0,可以使用:

<xsl:value-of select="current-date() - xs:dayTimeDuration('P90D')"
xmlns:xs="http://www.w3.org/2001/XMLSchema"/>

答案 1 :(得分:0)

嘿谢谢大家的回复。我使用下面的代码解决了这个问题。

<xsl:value-of select="java:com.Utilities.getDeletedDate()" />

在Utilities类中,我添加了一个方法如下。

public static String getDeletedDate() {

    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DAY_OF_YEAR, -99);
    Date date = cal.getTime();
    DateFormat secondFormatter;
    String formatedDate = null;
    secondFormatter = new SimpleDateFormat("yyyy-MM-dd");
    formatedDate = secondFormatter.format(date);
    return formatedDate;
}

这对我来说很好。