如何将逗号分隔的字符串转换为mule中的csv?

时间:2018-06-11 21:51:05

标签: csv mule mule-studio

我有一个要求,我在流变量中有动态逗号分隔的字符串值,我需要将其转换为 csv 文件值。
例如,我可以在变量中使用逗号分隔的字符串值:

HttpStatusMessage

abc,efg,ijk

应转换为 csv 值,例如:

mno,123,qrs,w3e    

"abc","efg","ijk"    

我尝试了以下内容:

"mno","123","qrs","w3e"     

所以,在这里我期待 csv 文件的值为:

<set-variable variableName="stringValue" value="#['abc,efg,ijk']" doc:name="Variable"/>

  <dw:transform-message doc:name="Transform Message">
       <dw:set-payload><![CDATA[%dw 1.0
%output application/csv header=true, quoteValues=true, quoteHeader=true
---
flowVars.stringValue splitBy ","]]></dw:set-payload>
 </dw:transform-message>    

但它不起作用,收到错误!

1 个答案:

答案 0 :(得分:1)

你可能已经解决了这个问题,但如果没有 - 你实际上非常接近。转换为CSV需要一个二维数组作为输入:文件行的数组,其中每一行是一个列数组。

例如:jre\lib\security

在示例中的 splitBy 之后,您只有一个数组 - [["line1, Col1", "line1, Col2"], ["line2, col1", "line2, col2"], ... ],因此解决方案是将其包装在数组中:["abc","efg","ijk"]。这给出了您正在寻找的输出。