【问题标题】:How to dynamically create folders and place files in them as we loop through the files?当我们遍历文件时,如何动态创建文件夹并将文件放入其中?
【发布时间】:2020-06-04 21:44:13
【问题描述】:

我想遍历文件夹中的文件。这些文件的格式为“yyyymmdd_name”。

最近 1 年(最后一个月除外)的文件应移动到格式为 yyyymm 的特定文件夹中。这些文件夹以前不存在,必须在遇到该特定月份的第一个文件时动态创建。

这是作为必须每月运行的 SSIS 包的一部分完成的。我可以使用文件系统任务执行此操作吗?我需要脚本任务吗?

如果需要脚本任务,有人可以帮助如何在 C# 中实现它。

如何在循环浏览 yyyymm 格式的文件时动态创建文件夹。如果文件夹不存在,我在哪里添加条件,创建然后移动文件。否则只是移动文件

【问题讨论】:

  • 你有没有尝试过?几乎这里的任何人都可以完成这项任务,但我们不适合您。
  • 我刚开始接触 SSIS。我尝试过使用脚本任务及其工作。我只是想知道它是否可以使用文件系统任务。
  • 您使用什么逻辑来识别应处理的文件范围?我看到了业务规则,但实际上,您是如何在 SSIS 中实现这一点的,所以我们不会对您的实现做出错误的假设。
  • 对不起,我没有更清楚。假设我在文件夹 20200231_x、20200221_y、20191201_z、20191231_a、20191101_b 中有 5 个文件。我需要遍历它们,它们将根据年份和日期放置在文件夹 202002、201912、201911 中。这些文件夹以前不存在,但必须在我们通过检查文件的月份和年份来遍历文件时创建。特定月份和年份的所有文件,例如 2019/12,应移动到特定文件夹(在本例中名为 201912)

标签: c# loops ssis


【解决方案1】:

如果您要使用 File System Task,则需要使用其中的两个。

第一个将使用创建目录选项。

第二个将使用移动文件选项。

将优先约束箭头从第一个拖到第二个以显示操作顺序。

【讨论】:

  • 但是如何在循环浏览 yyyymm 格式的文件时动态创建文件夹。如果文件夹不存在,我在哪里添加条件,创建然后移动文件。否则只是移动文件。
  • 你怎么知道yyyymm是什么?
猜你喜欢
  • 2018-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-20
  • 2020-01-27
相关资源
最近更新 更多