2010-12-21 88 views
1
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); 
    } 

我需要確保電池!=行如何獲取DataTable的最後一個單元格?

我如何做到這一點在最後一個單元格?

回答

5

您不必這樣做。只需使用string.Join代替:

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

這將讓你的最後一行:

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

@i不需要最後一排的,我需要的行 – 2010-12-21 20:03:31

+1

在最後一個單元格@herrow切換的行,列 – msarchet 2010-12-21 20:05:10

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 
} 
0

使用row.ItemArray [row.ItemArray.Length-1]得到的值最後一個單元格

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); 
} 
相關問題