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);
}
我需要确保单元格!=行中的最后一个单元格
我该怎么做?
答案 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);
}