SSIS:在平面文件连接管理器中将行分隔符从 {LF} 大量更改为 {CR}{LF}

SSIS: Change row delimiter from {LF} to {CR}{LF} massively in flat file connection manager

我是 SSIS 的新手,我创建了一个带有 oledb 源和平面文件目标的数据流。

最初目标文件的行分隔符为 {LF} 但我现在必须将其更改为 {CR}{LF}。我有大约 100 多个这样的平面文件目标。

我尝试了以下方法,第二种方法有效,但过程很耗时。

  1. 我尝试打开每个平面文件连接管理器并尝试更改行分隔符,但我的 visual studio 没有响应。我做了几次都没有成功。

  2. 我删除了平面文件连接管理器并 re-create 它带有右行分隔符然后它工作正常但我担心的是我必须这样做超过 100 次。

  3. 我在文本编辑器中打开了 .dtsx 文件,我可以找到 header 行分隔符,但找不到行分隔符。

  4. 我尝试更改表达式中的行分隔符但它没有生效。

我们有什么最好的方法可以简单地做到这一点吗?

我用它来删除 CRLF

"$text = [IO.File]::ReadAllText(" + @ic + @FullFilePath + @ic + ") -replace " + 
ic2 +"`r`n" + @ic2 + "," + @ic2 +" " + @ic2 +  "; [IO.File]::WriteAllText(" + 
@ic+ @FullFilePath + @ic + ", $text)"

where 
@ic = ' 
@ic2 = """
@FullFilePath is the path returned from the For..Loop container.

注意:我将原始文件复制到一个新文件夹并更新副本而不是修改原始文件。

如果您更改此代码,我希望这对您有用:

-replace " +  ic2 +"`r`n" + @ic2 + "," + @ic2 +" " + @ic2 +  "

-replace " +  ic2 +"`n" + @ic2 + "," + @ic2 +"`r`n" + @ic2 +  "

我是在 VS 2008 中开发的。 screenshot