从ftp。
下载的所有文件我试过这个流程:
<flow name="myFlow">
<file:inbound-endpoint path="fiel_path" connector-ref="File" pollingFrequency="3600000" fileAge="50000" responseTimeout="10000" encoding="UTF-16" mimeType="text/csv" doc:name="File">
<file:filename-regex-filter pattern=".*#[server.dateTime.format('yyyy_MM_dd')].*.csv" caseSensitive="true"/>
</file:inbound-endpoint>
....
但我无法读取文件。 在此先感谢。
答案 0 :(得分:0)
在正则表达式中包含HH:mm:ss
#[server.dateTime.format('yyyy-MM-dd HH:mm:ss')]
答案 1 :(得分:0)
在正则表达式过滤模式中尝试此操作 &#34; *#[server.dateTime.format(&#39; yyyy_MM_dd_HH:MM:SS&#39)]。CSV&#34;
答案 2 :(得分:0)
文件正则表达式模式不处理MEL表达式。
您必须在文件入站端点中更改文件名 - 正则表达式 - 过滤器模式,并在流中包含表达式过滤器。
<file:inbound-endpoint path="fiel_path" connector-ref="File" pollingFrequency="3600000" fileAge="50000" responseTimeout="10000" encoding="UTF-16" mimeType="text/csv" doc:name="File">
<file:filename-regex-filter pattern=".*\d{4}_\d{2}_\d{2}_.*.csv" caseSensitive="true"/>
</file:inbound-endpoint>
<expression-filter expression="#[message.inboundProperties.originalFilename.contains(server.dateTime.format('yyyy_MM_dd'))]" doc:name="Filter today's date Expression"/>
上述正则表达式过滤器仅允许那些文件名中包含日期的文件,例如anytext_2016_05_10_anytext.csv。
上述表达式过滤器仅允许今天的日期。我假设您只希望今天的日期基于您在正则表达式中使用server.datetime。