在 Mule 4 上读取和聚合 CSV 文件

Read and aggregate CSV files on Mule 4

我有几个格式如下的 CSV 文件:

ID;NOTE;FISCYEAR;MONTH;CURRENCY;CURRENCY_2;NUMBERS;NUMBERS_2;CASH
177204930;"Something ""relevant"" date 01.03.07";2021;1;EUR;599;599000;599;"599,00 EUR"
175618258;"Address; 48ct xpto.";2021;1;EUR;1;1000;0.35;"0,35 EUR"

我必须在其中读取它们并将它们聚合到一个有效负载中以便稍后处理(使用 batch)。我必须阅读约 50 个文件,每个约 33MB。

但是,File List Operator 没有 outputMimeType 属性,如 On New or Updated File,我可以在 MIME Type 选项卡中配置 separator=; escape="streaming=true。我不能用这个,因为我每次只能用它读取一个文件。

我该如何解决这个问题?

尝试使用 set variable 将每个文件的有效负载(内容的惰性流)分配给一个变量,并在同一操作中设置 mimeType 属性。

<file:read>...
<foreach>
   <set-variable variableName="contents" value="#[payload]" mimeType="application/csv..." />
   <!-- process the file contents here as vars.contents -->