如何使用Mule 4将多行JSON合并为指定格式的字符串
Mule 4 实现JSON到指定格式字符串的转换
需求说明
输入为包含日期、时间和文本行数组的JSON结构,需转换为每行以「日期 时间: 文本内容」格式组成的字符串,示例输出:
01/09/2301 1755: This is test line 1 01/09/2301 1755: This is test line 2
假设输入JSON结构
(对应你提供的图片内容,结构如下)
{ "date": "01/09/2301", "time": "1755", "lines": [ "This is test line 1", "This is test line 2" ] }
DataWeave 转换脚本
在Mule 4的Transform组件中使用以下DataWeave 2.0脚本即可完成转换:
%dw 2.0 output application/java --- (payload.lines map ((line) -> "${payload.date} ${payload.time}: ${line}")) joinBy "\n"
脚本说明
payload.lines map (...):遍历输入JSON中的lines数组,为每个文本行拼接日期和时间前缀joinBy "\n":将拼接后的行数组转换为以换行符分隔的单一字符串- 若输入的
date或time是日期时间类型而非字符串,可先使用formatDateTime函数格式化,例如:formatDateTime(payload.date, "dd/MM/yyyy")
内容的提问来源于stack exchange,提问作者Nghĩa
相关产品推荐
相关产品推荐

