2011-03-19 119 views
6

我有一個數組像這樣的:填充的DataTable使用Array

const int dim = 1000; 
    double[,] array = new double[dim, dim]; 

    Random ran = new Random(); 
    for (int r = 0; r < dim; r++) 
     for (int c = 0; c < dim; c++) 
      array[r, c] = (ran.Next(dim)); 

    DataTable dataTable = new DataTable(); 

我可以填補dataTablearray數據?

回答

5

嘗試這樣:

var dt = new DataTable(); 
//AddColumns 
for (int c = 0; c < dim; c++) 
    dt.Columns.Add(c.ToString(), typeof(double)); 
//LoadData 
for (int r = 0; r < dim; r++) 
    dt.LoadDataRow(arry[r]); 
1

你要設置列,然後在同一時間使用

DataTable.LoadDataRow()這需要object[]

查覈在MSDN page的例子加載一行。

0

是的,你可以,但你必須先添加1000列於表所示:

dataTable.Columns.Add("Column" + c, typeof(double)); 

然而,真正的問題是,爲什麼你要那麼做。 DataTable是非常無效的數據結構。

+0

如果它是無效的,你可以建議一個更有效的數據結構? – Pedro77 2013-04-19 13:07:20

+0

@ Pedro77取決於你想要做什麼。 – 2013-04-25 12:50:59

+3

你應該解釋或說明爲什麼它是無效的。 – Timmerz 2013-06-28 20:35:04