2013-07-25 138 views
0

早些時候,我有一個字段需要獲取當前日期,所以對於這種情況,我使用了以下內容。xslt比當前日期早90天

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

現在,我已經要求我必須從今天起獲得不超過90天的日期。請建議我可以根據上面的代碼完成,或者您有任何其他方式使用xslt?

+0

您使用的是哪個版本的XSLT? XSLT 2.0有一個'xs:date'數據類型和對該類型的操作,如增加或減少持續時間。 –

回答

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; 
} 

這對我來說工作得很好。

1

如果您正在使用XSLT 2.0,您可以使用此:

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