今天熟悉了下二維數組的使用,大概使用過程:就是先把DataTable資料存入到二維數組,然後再把二維數組迴圈讀取出來。
測試代碼如下(測試代碼沒做異常處理):
///擷取DataTable資料集
DataTable dt = GetData();
//定義二維數組,並把資料存放區到數組(根據DataTable行列數)
string[,] arrayList = new string[dt.Rows.Count,dt.Columns.Count];
for(int i=0;i<dt.Rows.Count;i++)
{
for (int j = 0; j < dt.Columns.Count; j++)
{
arrayList[i,j] = dt.Rows[i][j].ToString();
}
}
//讀取二維數組資料並迴圈顯示(說明:arrayList.GetLength(0):擷取數組行數,arrayList.GetLength(1):擷取列數行數)
string strRes = "";
for (int i = 0; i < arrayList.GetLength(0); i++)
{
for (int j = 0; j < arrayList.GetLength(1); j++)
{
strRes += arrayList[i, j] + " ";
}
strRes += "<br>";
}
//輸出
Response.Write(strRes);
/// <summary>
/// 擷取資料集
/// </summary>
/// <returns>DataTable資料集</returns>
DataTable GetData()
{
DataTable dt = new DataTable();
DataColumn dc;
DataRow dr;
dc=new DataColumn();
dc.ColumnName="ID";
dc.DataType = typeof(int);
dc.DefaultValue = null;
dt.Columns.Add(dc);
dc=new DataColumn();
dc.ColumnName="Name";
dc.DataType = typeof(string);
dt.Columns.Add(dc);
dc = new DataColumn();
dc.ColumnName = "Address";
dc.DataType = typeof(string);
dt.Columns.Add(dc);
dt.Columns.Add(new DataColumn("School"));
dr=dt.NewRow();
dr["ID"]="1";
dr["Name"]="小明";
dr["Address"] = "廣東";
dr["School"] = "廣東大學";
dt.Rows.Add(dr);
dr=dt.NewRow();
dr["ID"]="2";
dr["Name"]="林明";
dr["Address"] = "深圳";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["ID"] = "3";
dr["Name"] = "張明";
dr["Address"] = "江西";
dt.Rows.Add(dr);
return dt;
}