我有一个场景,我需要根据文件名将文件从一个文件夹移动到不同的文件夹。
示例:在主文件夹中,我有不同名称的文件,文件名中包含特定名称的所有文件应该进入不同的文件夹。
我创建了一个表达式任务和文件系统任务来实现相同的目的,但主文件夹中的所有文件都被删除但在相应的文件夹中不可用。
这是我在表达式任务中使用的表达式,基于该表达式设置目标文件夹。
!(ISNULL( FINDSTRING( @[User::FileName] , @[User::FileV2] , 1 ) )) ? @[User::DestinationFolder] == @[User::Folder1] : !(ISNULL( FINDSTRING( @[User::FileName] , @[User::FileV3] , 1 ) ) )? @[User::DestinationFolder] == @[User::Folder2] :!(ISNULL( FINDSTRING( @[User::FileName] , @[User::FilePlacement] , 1 ) )) ? @[User::DestinationFolder] == @[User::Folder3] : @[User::DestinationFolder] == @[User::Folder3]
让我知道如何做到这一点。
答案 0 :(得分:0)
只有当搜索字符串或表达式为空时,Findstring才返回NULL,如果显示的话很可能在找不到时返回0,因此ISNULL将始终返回FALSE。
我建议使用> 0来测试条件,例如:
FINDSTRING( @[User::FileName] , @[User::FileV2] , 1 ) > 0 ...