You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何从文件名拆分下划线生成文件夹名?ADF Set Variable使用失败

ADF按文件名前缀自动归类文件夹的正确实现方案

针对你遇到的文件名错误归类问题,核心是要确保每个文件单独提取前缀、变量作用域正确,以下是具体修复步骤:

1. 正确提取文件名前缀的表达式

在Set Variable活动中,必须针对单个文件提取下划线前的前缀,使用以下表达式:

@split(item().name, '_')[0]
  • item().name:代表For Each循环中当前遍历的文件名(如ABCD_1234.csv)
  • split(..., '_'):按下划线拆分字符串,得到数组['ABCD', '1234.csv']
  • [0]:取数组第一个元素,即所需的文件夹名ABCD

2. 确保变量在循环内设置

  • 不要在For Each循环外提前设置变量,否则所有文件都会复用同一个前缀值
  • 必须把Set Variable活动放到For Each循环内部,每个文件处理时重新计算并更新变量

3. 验证变量与路径配置

检查变量值

可以在Set Variable后添加一个Log活动,输出当前文件名和提取的前缀,用于排查:

@concat('当前文件:', item().name, ',目标文件夹:', variables('FolderName'))

复制活动的目标路径设置

在复制活动的目标数据集里,将文件路径设置为:

@concat(variables('FolderName'), '/', item().name)

ADF会自动创建不存在的目标文件夹,无需手动提前创建

4. 处理边缘情况(可选)

如果存在不含下划线的文件名,可添加判断避免报错:

@if(contains(item().name, '_'), split(item().name, '_')[0], replace(item().name, '.csv', ''))

(此处.csv可替换为你实际的文件后缀)


内容的提问来源于stack exchange,提问作者Athiya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 01:05:25