首页 > 解决方案 > mule 4 读取 csv 文件跳过第一行

问题描述

在 Mule 4 中,我正在读取一个大型 csv 文件进行转换,并且需要将内容写入 db 表。csv 文件没有标题。当我默认运行集成时,第一行被跳过,就好像默认值被预先确定为标题一样。

        <sftp:listener doc:name="On New or Updated File" doc:id="f36f06d1-9dd1-4ea6-80fc-016a1b0fb2ac" config-ref="SFTP_Config" directory="${inbounddirectory}" recursive="false">
            <scheduling-strategy >
                <fixed-frequency frequency="120000" startDelay="1" />
            </scheduling-strategy>
            <sftp:matcher filenamePattern="xyz*.csv" />
        </sftp:listener>
        <logger level="INFO" doc:name="Logger" doc:id="e36120be-559b-4c32-b241-74752b340f45" message="FILENAME #[attributes.fileName]"/>
        <ee:transform doc:name="Transform Message" doc:id="2b6cbad1-6484-4eed-9b26-cf01354c5690" >
            <ee:message >
                <ee:set-payload ><![CDATA[%dw 2.0
output application/java
---
payload map ((payload , indexOfPayload) -> {
data1:payload[0],
data2:payload[1],
data3:payload[2],
data4:payload[3],
data5:payload[4],
data6:payload[5]
})]]></ee:set-payload>
            </ee:message>
        </ee:transform>
        <logger level="INFO" doc:name="Logger" doc:id="239df117-9eb5-43b3-b913-469217b759dd" message="PAYLOAD #[payload]"/>

我查看了资源下的 application-types.xml,看起来标题设置为 false,如下所示

<types:property name="headerLineNumber" value="0"/>
<types:property name="header" value="false"/>
<types:property name="isQuotedString" value="false"/>

任何建议将不胜感激。谢谢。

标签: dataweavemule4

解决方案


在 sFTP 侦听器属性中,转到 MIME 类型选项卡,从下拉列表中选择“application/csv”并添加值为“false”的“header”参数:

在此处输入图像描述


推荐阅读