解析 CSV 文件并从中获取文件的值
Parsing CSV file and get a value of the filed from it
关于 Mule 4 和 DWL 语法的问题。
我有一个需要 csv 文件的文件侦听器。
假设文件是这种格式
值 1、值 2、值 3、值 4
然后我有一个 "var" 消息处理器,需要将 value3(第三个字段)的值分配给一个变量。
我该怎么做?
感谢您的帮助。
如果只有一行,您可以使用索引 0 访问第一行:[0]
,然后使用索引 2 [2]
访问第三个字段。索引从 0 开始。
注意,如果您的 CSV 没有 header 行,请务必将其添加到 file:listener outputMimeType="application/csv;header=false"
以让dw 知道没有 header 行:
<flow name="csv">
<file:listener directory="/path/to/dir" outputMimeType="application/csv;header=false" >
<scheduling-strategy >
<fixed-frequency frequency="100000" />
</scheduling-strategy>
</file:listener>
<logger level="INFO" message="#[payload]" />
<set-variable value="#[output application/java --- payload[0][2] as String]" variableName="myVar" />
<logger level="INFO" message="#[vars.myVar]" />
</flow>
另请注意,您还可以将 transform
组件用于 set-variables 以进行需要更好格式的更复杂的转换:
<ee:transform>
<ee:variables>
<ee:set-variable variableName="myVar" ><![CDATA[%dw 2.0
output application/java
---
payload[0][2] as String]]></ee:set-variable>
</ee:variables>
</ee:transform>
关于 Mule 4 和 DWL 语法的问题。
我有一个需要 csv 文件的文件侦听器。
假设文件是这种格式
值 1、值 2、值 3、值 4
然后我有一个 "var" 消息处理器,需要将 value3(第三个字段)的值分配给一个变量。
我该怎么做?
感谢您的帮助。
如果只有一行,您可以使用索引 0 访问第一行:[0]
,然后使用索引 2 [2]
访问第三个字段。索引从 0 开始。
注意,如果您的 CSV 没有 header 行,请务必将其添加到 file:listener outputMimeType="application/csv;header=false"
以让dw 知道没有 header 行:
<flow name="csv">
<file:listener directory="/path/to/dir" outputMimeType="application/csv;header=false" >
<scheduling-strategy >
<fixed-frequency frequency="100000" />
</scheduling-strategy>
</file:listener>
<logger level="INFO" message="#[payload]" />
<set-variable value="#[output application/java --- payload[0][2] as String]" variableName="myVar" />
<logger level="INFO" message="#[vars.myVar]" />
</flow>
另请注意,您还可以将 transform
组件用于 set-variables 以进行需要更好格式的更复杂的转换:
<ee:transform>
<ee:variables>
<ee:set-variable variableName="myVar" ><![CDATA[%dw 2.0
output application/java
---
payload[0][2] as String]]></ee:set-variable>
</ee:variables>
</ee:transform>