【C#】データテーブルから行を取得する【DataTable】
目次
行を取得する(index)
「dt.Rows[index]」の [index]部分に、
インデックスを指定することで行が取得できます。
ここでは、インデックス 0 を指定して、行を取得しています。
// データテーブルの初期化
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
// 行追加
dt.Rows.Add("りんご", "3", "50", "150");
dt.Rows.Add("ぶどう", "1", "200", "200");
dt.Rows.Add("みかん", "10", "30", "300");
/*
今回の内容はここから
*/
// 行を取得する(index)
DataRow dr = dt.Rows[0];
行から値を取得する(index+index)
「dt.Rows[index][index]」の
先頭の[index]指定部分が、行に対するインデックス指定
最終の[index]指定部分が、列に対するインデックス指定
こうすることで、○行目の○○の値が取得可能となります。
ここでは、 行インデックスの指定は 1 、 列インデックスの指定は 0 で値を取得しています。
コンソールに出力される値は、ぶどうになります。
// データテーブルの初期化
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
// 行追加
dt.Rows.Add("りんご", "3", "50", "150");
dt.Rows.Add("ぶどう", "1", "200", "200");
dt.Rows.Add("みかん", "10", "30", "300");
/*
今回の内容はここから
*/
// 行から値を取得する(index+index)
Console.WriteLine(dt.Rows[1][0]);
行から値を取得する(index+文字列)
「dt.Rows[index][“XXX"]」の
先頭の[index]指定部分が、行に対するインデックス指定
最終の[“XXX"]指定部分が、列に対する列名指定
こうすることで、○行目の○○の値が取得可能となります。
ここでは、 行インデックスの指定は 1 、 列名の指定は HINMEI(品名) で値を取得しています。
コンソールに出力される値は、ぶどうになります。
// データテーブルの初期化
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
// 行追加
dt.Rows.Add("りんご", "3", "50", "150");
dt.Rows.Add("ぶどう", "1", "200", "200");
dt.Rows.Add("みかん", "10", "30", "300");
/*
今回の内容はここから
*/
// 行から値を取得する(index+文字列)
Console.WriteLine(dt.Rows[1]["HINMEI"]);
コピペですぐ試せるソースコード
上記で記載した3点のソースコードをまとめました。
ソースコードをコピペするとそれぞれの動作が確認できると思います。
private void DataTable_Get_Row_Item()
{
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
// 行追加
dt.Rows.Add("りんご", "3", "50", "150");
dt.Rows.Add("ぶどう", "1", "200", "200");
dt.Rows.Add("みかん", "10", "30", "300");
/*
今回の内容はここから
*/
// 行を取得する方法(index)
DataRow dr = dt.Rows[0];
// 行から値を取得する方法(index+index)
Console.WriteLine(dt.Rows[1][0]);
// 行から値を取得する方法(index+文字列)
Console.WriteLine(dt.Rows[1]["HINMEI"]);
}
まとめ
今回は複数の方法で、行を取得するソースコードを記載しました。
用途にあったやり方、自分のやりやすい実装を採用していきましょう。
Microsoft 公式ページ
DataRowCollection クラス
https://docs.microsoft.com/ja-jp/dotnet/api/system.data.datarowcollection?view=netframework-4.0
お問い合わせ先
Twitterの利用再開しましたのでお問い合わせのある方はTwitterまでご連絡ください。
最近のコメント