如何在DataWeave 2中转换变量存储的日期字符串格式?
解决方法
你的核心问题是没有先将字符串解析为日期类型,直接对字符串使用format参数不会生效。正确的做法是先把字符串转成Date类型,再转换为目标格式的字符串:
%dw 2.0 output application/json var value = "202206" // 先将字符串解析为日期类型 var parsedDate = value as Date {format: "yyyyMM"} --- { "date": parsedDate as String {format: "yyyy-MM-01"}, // 指定英文locale确保月份名称为英文 "month": parsedDate as String {format: "MMMM", locale: "en"} }
输出结果:
{ "date": "2022-06-01", "month": "June" }
关键说明:
format参数仅在字符串 ↔ 日期/时间类型的转换中生效,直接对字符串转字符串时该参数不起作用- 使用
locale: "en"可以确保月份名称输出为英文,避免受系统默认locale影响导致输出其他语言的月份名
内容的提问来源于stack exchange,提问作者Nadeem
相关产品推荐
相关产品推荐

