我正在编写一个小应用程序来对我拥有的 CSV 文件中的某些单元格进行一些处理。我已经想出了如何使用我在网上找到的库来读取和写入 CSV 文件,但是我遇到了麻烦:该库将 CSV 文件解析为 DataTable,但是,当我尝试更改表格的一个单元格时,它是'不保存表中的更改!
下面是有问题的代码。我已将流程分成多个变量,并重命名了一些内容,以便更轻松地针对这个问题进行调试。
代码
循环内部:
string debug1 = readIn.Rows[i].ItemArray[numColumnToCopyTo].ToString();
string debug2 = readIn.Rows[i].ItemArray[numColumnToCopyTo].ToString().Trim();
string debug3 = readIn.Rows[i].ItemArray[numColumnToCopyFrom].ToString().Trim();
string towrite = debug2 + ", " + debug3;
readIn.Rows[i].ItemArray[numColumnToCopyTo] = (object)towrite;
循环后:
readIn.AcceptChanges();
当我调试我的代码时,我看到towrite正在正确形成并且一切正常,除了该行没有更新:为什么它不工作?我有一种感觉,我在这里犯了一个简单的错误:我上次使用 DataTables 时(很久以前),我遇到了类似的问题。
如果您想知道我为什么要在towrite中添加另一个逗号,那是因为我将街道地址字段与邮政编码字段结合在一起 - 我希望这不会搞砸任何事情。
我的代码有点乱,因为我只是想编辑一个文件来做一个小修复,很抱歉。