使用 Mule 4 将 CSV 转换为 XML

Convert CSV to XML using Mule 4

在 mule 4 中使用 dataweave 2.0 将 CSV 转换为 XML 时遇到问题。

输入负载 (CSV):

employee_id,amount  
12345,75  
67890,15  
13579,38  

输出结果(XML):

<ch:Data xmlns:ch="xxx:com.abcdef.report">
  <ch:Entry>
     <ch:Employee_ID>12345</ch:Employee_ID>
     <ch:Cost>75</ch:Cost>
  </ch:Entry>
  <ch:Entry>
     <ch:Employee_ID>67890</ch:Employee_ID>
     <ch:Cost>15</ch:Cost>
  </ch:Entry>
  <ch:Entry>
     <ch:Employee_ID>13579</ch:Employee_ID>
     <ch:Cost>38</ch:Cost>
  </ch:Entry>
</ch:Data>

您需要使用 dynamic object feature 以便它扩展父对象中的数组

%dw 2.0
ns ch xxx:com.abcdef.report
output application/xml
---
ch#Data: {
    (payload map {
        ch#Entry: {
            ch#Employee_ID: $.employee_id,
            ch#Cost: $.amount 
        }
    })
}