如何获取DataTable的最后一个单元格?

时间:2010-12-21 20:01:00

标签: c#

    foreach(DataRow row in dt.Rows)
    {
       foreach(var cell in row.ItemArray)
       {
          builder.Append(cell.ToString());
          if(cell != row.lastcell)
             builder.Append("\t");
       }
       builder.Append(Environment.NewLine);
    }

我需要确保单元格!=行中的最后一个单元格

我该怎么做?

5 个答案:

答案 0 :(得分:5)

你不需要这样做。只需使用string.Join代替:

string[] strings = Array.ConvertAll(row.ItemArray, x => x.ToString());
builder.Append(string.Join("\t", strings);

答案 1 :(得分:0)

这会让你到最后一行:

row = (DataRow)table.Rows[table.Rows.Count-1];

答案 2 :(得分:0)

如果你使用for循环,你可以完全避开最后一个单元格:

for (int i=0; i<row.ItemArray-2;i++)
{
    // do your code here, we are taking off the last cell with the -2
}

答案 3 :(得分:0)

使用row.ItemArray [row.ItemArray.Length-1]获取最后一个单元格的值

答案 4 :(得分:0)

foreach(DataRow row in dt.Rows)
{
   string separator = String.Empty;
   foreach(var cell in row.ItemArray)
   {
      builder.Append(separator);
      builder.Append(cell.ToString());
      separator  = "\t";
   }
   builder.Append(Environment.NewLine);
}