如何将文件夹中的最新文件提供给 Integration Services 中的平面文件源

How to feed recent file in a folder to a Flat File Source in Integration Services

我想从日常类似文件的文件夹中导入一个 CSV 文件。 因为我需要在插入之前 t运行 分类目标 sql 服务器,所以我只需要来自源的最新文件。 我正在创建一个集成服务 (dtx) 包,可以 运行 而无需手动更改源文件名

您必须创建一个脚本任务并使用以下代码:

public void Main()
{

// TODO: Add your code here
    var directory= new DirectoryInfo(Dts.Variables["User::VarFolderPath"].Value.ToString());

FileInfo[] files = directory.GetFiles();
DateTime lastModified = DateTime.MinValue;

    foreach (FileInfo file in files)
{
    if (file.LastWriteTime > lastModified)
    {
        lastModified = file.LastWriteTime;
        Dts.Variables["User::VarFileName"].Value = file.ToString();
    }
}

    MessageBox.Show(Dts.Variables["User::VarFileName"].Value.ToString());


    Dts.TaskResult = (int)ScriptResults.Success;
}

以上代码仅供参考,您必须根据自己的变量进行修改,并根据自己的文件名约定

进行过滤