Fun Coding

学んだことを記録していきます!

【C#】データテーブルの行の追加の方法

データテーブルの行の追加の方法をサンプルコードを交えて解説したいと思います。

説明

方法
メソッド名
説明
Add 行を末尾に追加
InsertAt 行を指定したインデックスに挿入
Add

・引数に指定した値を使用して行を作成して追加
・引数に指定したDataRowを追加
・戻り値として追加された行のDataRowが生成される (引数がない場合は空行)

DataRowはNewRowメソッドを使用しても生成できます。

InsertAt

・指定したインデックスに新しい行を挿入
・戻り値として挿入された行のDataRowが生成される

コード
using System;
using System.Data;

namespace Sample {
    /// <summary>
    /// メインプログラム
    /// </summary>
    public class Program {
        /// <summary>
        /// テーブルの行の追加
        /// </summary>
        static void Main() {
            // テーブルの生成
            var table = new DataTable();

            // テーブルに列を追加
            table.Columns.Add("名前", typeof(string));
            table.Columns.Add("年齢", typeof(int));


            // テーブルに行を追加
            // 1行目
            table.Rows.Add("一郎", 10);

            // 2行目
            DataRow row2 = table.Rows.Add();
            row2["名前"] = "二郎";
            row2[1] = 20;

            // 3行目
            DataRow row3 = table.NewRow();
            row3[0] = "三郎";
            row3["年齢"] = 30;
            table.Rows.Add(row3);

            // 4行目
            DataRow row4 = table.NewRow();
            row4[0] = "四郎";
            row4["年齢"] = 40;
            table.Rows.InsertAt(row4, 2);


            // テーブルの行を出力
            foreach(DataRow dataRow in table.Rows) {
                foreach(DataColumn dataColumn in table.Columns) {
                    Console.WriteLine(dataColumn.ColumnName + " : " + dataRow[dataColumn.ColumnName]);
                }
                Console.WriteLine();
            }
        }
    }
}
出力
名前 : 一郎
年齢 : 10

名前 : 二郎
年齢 : 20

名前 : 四郎
年齢 : 40

名前 : 三郎
年齢 : 30