HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


C# 2005の開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > C# 2005 Tips > コントロール > DataSet Tips メニュー

14.DataSetのデータをXMLに書き込む

UPDATE:2007/01/13 

<< 前のTips  次のTips >>

 

 DataSetのデータをXMLに書き込むにはDatSetオブジェクトのWriteXmlメソッドを使用します。

手順
1)変数の宣言
2)データセットにテーブルを追加する
3)テーブルにフィールドを追加する
4)フィールドに主キーを設定する
5)テーブルにレコードを追加する
6)ストリームを作成する
7)DataSetのデータをXMLに書き込む

手順1)-5)まではデータを作り出している部分なのでDataSetにデータがある場合は省略して下さい。実際に必要な部分は6),7)です。

 
サンプル
private void button1_Click(object sender, EventArgs e)
{
    // 1)変数の宣言
    DataSet dtSet = new DataSet("アドレステーブル");
    DataTable dtTable;
    DataColumn[] PrimaryColumn = new DataColumn[1];
    DataRow dtRow;

    // 2)データセットにテーブルを追加する
    // ADDRESS_TBLというテーブルを作成します
    dtTable = dtSet.Tables.Add("ADDRESS_TBL");

    // 3)テーブルにフィールドを追加する
    // .Add("フィールド名", フィールドの型)で追加します
    PrimaryColumn[0] = dtTable.Columns.Add("No", Type.GetType("System.Int32"));
    dtTable.Columns.Add("ZIPCODE", Type.GetType("System.String"));
    dtTable.Columns.Add("ADDRESS", Type.GetType("System.String"));
    dtTable.Columns.Add("PHONE", Type.GetType("System.String"));
    dtTable.Columns.Add("E-MAIL", Type.GetType("System.String"));

    // 4)フィールドに主キーを設定します
    dtTable.PrimaryKey = PrimaryColumn;

    // 5)テーブルにデータを追加する
    dtRow = dtTable.NewRow();
    dtRow["No"] = "1";
    dtRow["ZIPCODE"] = "123-4567";
    dtRow["ADDRESS"] = "東京都のどこか";
    dtRow["PHONE"] = "0120-111-2222";
    dtRow["E-MAIL"] = "hoge@mail.co.jp";
    dtTable.Rows.Add(dtRow);

    // 確認のためDataGridViewにデータを表示
    dataGridView1.DataSource = dtTable;

    System.IO.StreamWriter SW;
    // 6)ストリームをシフトJISエンコーディングで作成
    SW = new System.IO.StreamWriter(@"C:\Work\Test.xml", false,
        System.Text.Encoding.GetEncoding("Shift_Jis"));
    // 7)DataSetのデータをXMLに書き込む
    dtSet.WriteXml(SW);
}
 

<< 前のTips  次のTips >>