簡體   English   中英

如何在c#中將DataTable轉換為Array?

[英]How to convert DataTable to Array in c#?

我想在C#中將DataTable datatable1轉換為Multidimensional Array

|  Name  |  Age  |
------------------
|  jim   |   23  |
|  ard   |   22  |
|  tom   |   30  |

我想將其轉換為[["jim",23],["ard",22],["tom",30]] 有人可以幫助我嗎? 謝謝你。

這將是 :

string[,] str = new string[YourDataTable.Rows.Count, 2]; 

int i = 0;
foreach (DataRow row in YourDataTable.Rows)
{
    if (i < YourDataTable.Rows.Count)
    {
        str[i, 1] = row["name"].ToString();
        str[i, 2] = row["age"].ToString();
        i++;
    }
}
var datatable1 = CreateDataTable(); // or the way you populate the table
var data = datatable1.Rows
                     .Cast<DataRow>()
                     .Select(row => row.ItemArray)
                     .ToArray();
Console.WriteLine(DataToString(data));

CreateDataTable()在哪里

DataTable CreateDataTable()
{
    var dt = new DataTable("tbl");
    dt.Columns.AddRange(new DataColumn[]
    {
        new DataColumn("Name", typeof(string)),
        new DataColumn("Age", typeof(int))
    });
    dt.Rows.Add("Jim", 23);
    dt.Rows.Add("Ard", 22);
    dt.Rows.Add("Tom", 30);
    return dt;
}

DataToString(object[][] data)

string DataToString(object[][] data) =>
    $"[{string.Join(", ", data.Select(i => $"[{string.Join(", ", i)}]"))}]";

[[Jim, 23], [Ard, 22], [Tom, 30]]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM