如何读取文本文件的某个部分并替换为另一行?
在文件中有一个部分:“Attend_10”想要用“Attend_10_ [Variable_Value]替换它。
如何使用SSIS中的脚本(C#)执行此操作?
答案 0 :(得分:0)
我不确定您输入的内容或匹配要求,但您可以轻松使用Linq或for
循环来执行此操作。下面是两个简单的示例,它们读取输入文件sample.txt
并写入输出文件out.csv
。
使用Linq:
string periodValue = "201410";
File.WriteAllLines(
"out.txt",
File.ReadAllLines("sample.txt").
Select(l => l.Replace("Attend_10", "Attend_10_" + periodValue))
);
使用for
循环:
string periodValue = "201410";
string[] lines = File.ReadAllLines("sample.txt");
for (int i = 0; i < lines.Length; i++)
{
lines[i] = lines[i].Replace("Attend_10", "Attend_10_" + periodValue);
}
File.WriteAllLines("out.txt", lines);
输入:sample.txt:
<SomeTextHere>
<File Name>=Attend_10
<MoreTextHere>
输出:out.txt
<SomeTextHere>
<File Name>=Attend_10_201410
<MoreTextHere>
如果您的匹配要求更高级,则可以使用RegEx匹配每个字符串中的某些模式。