我有一个必须每天加载到我的表中的输入文件。我收到以下格式的文件示例 sample_20120518_160754.CSV。时间戳可能会有所不同,它不是当前时间戳
我已经使用表达式来获取文件名和日期,但是如何获取文件的时间戳。
这是我用来获取文件和日期的表达式。
"sample_" + RIGHT("0" + (DT_STR,4,1252)DATEPART("yyyy", (DT_DATE)@[User::p_varAsOfDate]), 4) + RIGHT("0" + (DT_STR, 2, 1252)DATEPART("dd", (DT_DATE)@[User::p_varAsOfDate]), 2) + (DT_STR, 2, 1252)DATEPART("mm", (DT_DATE)@[User::p_varAsOfDate]) +"_" +".CSV"
这个表达式产生结果
sample_2012145_.CSV 现在我还想要文件的时间戳。
最佳答案
下面的表达式也会为您提供日期部分 + 时间部分。您可以在它们之间放置额外的分隔符来完成您想要的格式。
(DT_STR, 4, 1252)DATEPART("yyyy", @[System::ContainerStartTime]) +
RIGHT("0" + (DT_STR, 2, 1252)DATEPART("mm", @[System::ContainerStartTime]), 2) +
RIGHT("0" + (DT_STR, 2, 1252)DATEPART("dd", @[System::ContainerStartTime]), 2) +
RIGHT("0" + (DT_STR, 2, 1252)DATEPART("hh", @[System::ContainerStartTime]), 2) +
RIGHT("0" + (DT_STR, 2, 1252)DATEPART("mi", @[System::ContainerStartTime]), 2) +
RIGHT("0" + (DT_STR, 2, 1252)DATEPART("ss", @[System::ContainerStartTime]), 2) +
您可以编辑上述表达式并使用您选择的另一个变量。由于方便,我选择了 ContainerStartTime。
关于ssis - 如何在ssis中获取带有时间戳的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10685999/