我有一个这样的CSV:
data1,data2,data3;dataa;datab;datac;datax,datay,dataz
data1,data2,data3;dataa;datab;datac;datax,datay,dataz
data1,data2,data3;dataa;datab;datac;datax,datay,dataz我使用spliter逐行处理记录,进一步使用dataweave中的splitBy ",“将记录转换为映射。但是我如何才能为";“做另一个层次的拆分呢?SplitBy不允许使用多个分隔符,所以dataweave中的CSV类型也不允许。
最终,我想要一个这样的JSON:
{
"1":"data1",
"2":"data2",
"3":{
"a":"dataa",
"b":"datab",
"c":"datac"
},
"x":"datax",
"y":"datay",
"z":"dataz "
}有什么想法吗?
发布于 2016-07-29 15:19:49
尝试以下DataWeave代码:
%dw 1.0
%output application/json
---
payload map {
"1": $[0],
"2": $[1],
"3": using (detail = $[2] splitBy ";") {
a: detail[1],
b: detail[2],
c: detail[3]
},
x: $[3],
y: $[4],
z: $[5]
}备注:
datac和datax。将;字符替换为,,例如:...;datab;datac,datax,...中直接处理它
发布于 2016-07-29 15:17:26
我想说的是,您的JSON示例的结构很糟糕!在这个JSON中,第四个元素是一个对象,它没有键,只有值……首先,你应该验证你的end JSON。有效JSON示例:

当您验证JSON时,我将尝试帮助您将CSV数据转换为JSON。
https://stackoverflow.com/questions/38652040
复制相似问题