String 如何使用DataWeave从Mule中的日期字符串中减去一天
我想使用String 如何使用DataWeave从Mule中的日期字符串中减去一天,string,date,mule,dataweave,String,Date,Mule,Dataweave,我想使用DataWeave从Mule中的日期字符串中减去一天: 示例: Input date : 18/03/2017 09:20:55 Output date : 17/03/2017 09:20:55 作为另一种选择,我们可以按照文档中的示例减去一段时间。在该示例中,我们可以定义“|”字符之间的句点。例如:| P1D | 因此,我们可以执行以下步骤从日期字符串中减去一天: 将日期字符串转换为日期:“18/03/2017 09:20:55”为:localdatetime{format:“dd
DataWeave
从Mule中的日期字符串中减去一天:
示例:
Input date : 18/03/2017 09:20:55
Output date : 17/03/2017 09:20:55
作为另一种选择,我们可以按照文档中的示例减去一段时间。在该示例中,我们可以定义“|”字符之间的句点。例如:| P1D |
因此,我们可以执行以下步骤从日期字符串中减去一天:
将日期字符串转换为日期:“18/03/2017 09:20:55”为:localdatetime{format:“dd/MM/yyyy HH:MM:ss”}
减去一天:[步骤1上的日期]-\P1D
将日期转换回字符串:[步骤#2上减去的日期]为:字符串{格式:“dd/MM/yyyy HH:MM:ss”}
{currentdateTime:(现在为:localdatetime{format:“dd/MM/yyyyyy HH:MM:ss”})为:string{format:“dd/MM/yyyyy HH:MM:ss”},beforedate:((currentdateTime)-| P1D |)为:string{format:“dd/MM/yyyyyyyy HH:MM:ss”}我能把所有这些东西放在一个数据编织中吗?是的,你可以。我把台阶分开,把它弄清楚了。请将每个步骤分组在括号内,以避免出现错误或意外结果。例如:((step1)step2)step3
%dw 1.0
%output application/json
%var aPeriod=("P" ++ 1 ++ "D") as :period
%var cDatetime= now as :datetime {format: "MM/dd/yyyy HH:mm:ss"}
---
{
previousDate: (cDatetime - aPeriod) as :datetime {format: "MM/dd/yyyy HH:mm:ss"}
}