有没有办法从SSIS中的平面文件中删除换行符?没有脚本任务。
背景:我需要将平面文件的所有内容作为单个字符串值发送。
答案 0 :(得分:0)
如果您可以访问某些SQL数据库,则可以尝试将平面文件的数据导出到该数据库中的SQL表中。数据将在SQL中加载到多行中。然后,您需要做的就是连接所有行中的数据。
表格结构
DataRow
----
This
is a
really
good way.
作为SQL语句的代码
DECLARE @Data VARCHAR(MAX)
SELECT @Data = COALESCE(@Data + '', '') + DataRow
FROM YourTable
WHERE ISNULL(DataRow, '') <> ''
SELECT @Data
然后,您可以将上述SQL语句放在Execute SQL Task
中,并将输出放到结果集中,并将其映射到某个字符串变量,该变量可以根据您的意愿使用。
答案 1 :(得分:0)
我选择编写一个简单的方法来读取整个文件并将其写入单个String变量,该变量实际上是一个DTS变量:
public String getFileData(FileInfo file)
{
string text = System.IO.File.ReadAllText(@file.FullName);
return text;
}
答案 2 :(得分:0)
在sql查询中对具有换行符
的列使用此表达式选择 RTRIM(LTRIM(REPLACE(REPLACE(REPLACE(ColumnWithNewLineChar,CHAR(9),&#39;&#39;),CHAR(10),&#39;&#39;),CHAR(13),&#39 ;&#39;)))作为表
中的ColumnWithOutNewLineCharTab,char(9)。换行,char(10)。回车,char(13)
上面的表达式删除/替换新的行字符