使用SSIS或C#删除数据或CSV文件

时间:2013-01-31 17:36:09

标签: c# ssis

我正在努力:

  1. 使用CSVSSISC#文件中删除数据。如果我无法删除数据,
  2. 至少使用CSVSSIS删除C#文件。
  3. 如果有可能,我想知道如何做#1。

3 个答案:

答案 0 :(得分:1)

如果要使用C#删除CSV文件中的所有行,请按照以下代码...

System.IO.File.WriteAllText(@"D:/filename.csv",string.Empty);

删除所有行并将文件保留为空...

答案 1 :(得分:0)

C#

要从平面文件中删除行,您需要读取该文件并将其写入另一个文件,不包括您不想要的任何行。

阅读这两篇文章,它们很简短

可能有更聪明的方法来压缩到特定位置。如果它是一个固定宽度的文件,那么你可以计算去哪里以及剥离多少但是因为它是一个CSV,你就会对这个协议感到满意。

SSIS

我假设删除行的愿望是SSIS之前的标题或预告片,之后SQL Server 2012不能很好地发挥作用。在这种情况下,您将要建立2个连接管理器。一个人将在一列中读取整个文件。第二个将是您格式良好的文件输出。这里将会发生同样的工作流程。

在数据流任务中,添加Flat File Source并将其配置为使用1列连接管理器。添加Derived Column componentScript Component可以确定此行是否为管理员。添加Conditional Split,只将好行分流到使用强类型定义的Flat File Destination

然后在您的下一个数据流中,使用连接到强类型定义的Flat File Source,然后使用bob作为您的叔叔。

答案 2 :(得分:0)

using System.IO;     
string path = @"c:\temp\a.txt";

if (File.Exists(path))
{
   File.Delete(path);
}