使用 Talend 移动当天的最新文件

Move current day's latest files using Talend

我在 Talend 中有一份工作,它将连接到一个文件夹并查找当天的文件(基于名称,即 20150928_MyFile、20150928_MySecondFile 和 20150928_MyThirdFile),并将将这些文件移动到其他文件夹。我在 flemask 下面使用了查找今天的文件,但是 Talend 通过这种方式移动了今天日期的所有文件,但我希望它只移动今天日期的最新文件(20150928_MyFile、20150928_MySecondFile 和 20150928_MyThirdFile) 每个要移动的文件。 我使用了下面的文件掩码 -

((String)TalendDate.formatDate("yyyyMMdd", TalendDate.getCurrentDate())) + "*.CSV"

提前致谢!!

你不能相信基于当前日期的掩码,因为它没有必要在现在时刻有一个文件,但你可以使用 tFileList 来获取最后修改时间,并在每次迭代中获取最大最后修改时间:

tFileList-----(iterate)------tJavaRow
    |
    |
(OnSubJobOk)
    |
    .. [the rest of the job]
  • tFileList 可以遍历文件夹并按修改时间对文件进行排序。
  • tJavaRow只获取第一个文件,使用全局变量或上下文变量保存。