将清理组件连接到tFileList-Talend

将清理组件连接到tFileList-Talend,talend,Talend,在tFileList的迭代过程中,将逻辑应用于对象的最佳方式是什么 问题是,如果使用tFileList获取文件列表,则无法使用tJavaRow或jMap创建我希望重命名文件的文件名。基本上,如果我有具有年份(20102011212等)的zip文件,并且每个zip文件包含具有相同名称(f1.csv、f2.csv、f3.csv)的文件,我希望迭代压缩文件,解压缩它们并使用 f1_2010.csv、f2_2010.csv、f3_2010.csv..f1_2012.csv等 谢谢 当主链接在组件之间传输

在tFileList的迭代过程中,将逻辑应用于对象的最佳方式是什么

问题是,如果使用tFileList获取文件列表,则无法使用tJavaRow或jMap创建我希望重命名文件的文件名。基本上,如果我有具有年份(20102011212等)的zip文件,并且每个zip文件包含具有相同名称(f1.csv、f2.csv、f3.csv)的文件,我希望迭代压缩文件,解压缩它们并使用 f1_2010.csv、f2_2010.csv、f3_2010.csv..f1_2012.csv等


谢谢

当主链接在组件之间传输数据时,迭代链接提供了一种基于事件或事实执行组件的方法

通过这样的方式,您应该能够解决您的问题:

tFileList_1 --iterate--> tFileUnarchive_1
                           |
                        onComponentOK
                           |
                         tFileList_2 -- iterate --> tFileCopy_1
                           |
                        onComponentOK
                           |
                         tFileArchive_1
在tFileUnarchive中使用
((字符串)globalMap.get(“tFileList\u 1\u CURRENT\u FILEPATH”)
来获取ZIP路径。 在tFileCopy中,使用
((字符串)globalMap.get(“tFileList\u 2\u CURRENT\u FILEPATH”)
获取文件的路径并将其配置为重命名


对于名称修改,您可以在“onComponentOK”链接上添加tJava。通过使用
globalMap.put(“年”((字符串)globalMap.get(“tFileList\u 1\u CURRENT\u FILEPATH”))).substring(x,x))
或更复杂的代码。并在其他组件参数中使用这些变量。

到目前为止,您尝试了什么?你能编辑你的问题,包括你迄今为止创造的任何工作的截图吗?