Updating Cells in a DataTable

Posted by Maxim Z. on Stack Overflow See other posts from Stack Overflow or by Maxim Z.
Published on 2010-03-15T15:58:18Z Indexed on 2010/03/15 16:19 UTC
Read the original article Hit count: 149

Filed under:
|
|
|
|

I'm writing a small app to do a little processing on some cells in a CSV file I have. I've figured out how to read and write CSV files with a library I found online, but I'm having trouble: the library parses CSV files into a DataTable, but, when I try to change a cell of the table, it isn't saving the change in the table!

Below is the code in question. I've separated the process into multiple variables and renamed some of the things to make it easier to debug for this question.

Code

Inside the loop:

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;

After the loop:

readIn.AcceptChanges();

When I debug my code, I see that towrite is being formed correctly and everything's OK, except that the row isn't updated: why isn't it working? I have a feeling that I'm making a simple mistake here: the last time I worked with DataTables (quite a long time ago), I had similar problems.

If you're wondering why I'm adding another comma in towrite, it's because I'm combining a street address field with a zip code field - I hope that's not messing anything up.

My code is kind of messy, as I'm only trying to edit one file to make a small fix, so sorry.

© Stack Overflow or respective owner

Related posts about c#

Related posts about datatable