【发布时间】:2012-10-27 12:22:28
【问题描述】:
我想根据 CSV 文件中数据库的条件更新一列(第三列)。 想要删除 100,并用 , 替换 CSV 文件中部门为 1500 的员工
数据库表:
EmpID DeptID
100 1500
101 1300
102 1500
CSV文件如下图:
EmpID,EmpName,Score,Grade1,Grade2,Grade3
100,emp1,100,A1,A3
101,emp2,250,A1,A5,A2
102,emp3,100,A1
结果应该是这样的:
100,emp1,,A1,A3
101,emp2,250,A1,A5,A2
102,emp3,,A1
首先,我无法替换第三列中的值,请参见下面的代码:
string file1 = @"F:\test.csv"; string[] lines = System.IO.File.ReadAllLines(file1);
System.IO.StreamWriter sw = new System.IO.StreamWriter(file1);
foreach(string s in lines) {
sw.WriteLine(s.Replace("100", ""));
}
sw.Close();
如果我在 foreach 循环中给出以下行:
sw.WriteLine(Regex.Replace(s, s.Split(',')[2], m => s.Split(',')[2].ToString().Replace("100", "")));
它将所有值从 100 替换为空字符串。
您能告诉我如何替换第 3 列中的值吗?
提前致谢。
【问题讨论】: