简体   繁体   中英

Write & Read data from xml file

public partial class Form2 : Form
{
    DataTable dt = new DataTable();
    DataRow dr;
    public Form2()
    {
        InitializeComponent();
        dt.Columns.Add("ServerName");
        dt.Columns.Add("UserId");
        dt.Columns.Add("Password");
        dt.Columns.Add("DatabaseName");

    }

    private void btn_save_Click(object sender, EventArgs e)
    {
        dt.TableName = "DER";
        dr = dt.NewRow();
        dr["ServerName"] = tb_serverName.Text.Trim();
        dr["UserId"] = tb_userId.Text.Trim();
        dr["Password"] = tb_pwd.Text.Trim();
        dr["DatabaseName"] = tb_dbName.Text.Trim();
        dt.Rows.Add(dr);
        dt.WriteXml("D:\\DatabaseInfo.xml");
        dt.Clear();
    }

    private void btn_back_Click(object sender, EventArgs e)
    {
        dt.ReadXml("D:\\DatabaseInfo.xml");
        foreach (DataRow dr in dt.Rows)
        {
            tb_serverName.Text = dr["ServerName"].ToString();
            tb_userId.Text = dr["UserId"].ToString();
            tb_pwd.Text = dr["Password"].ToString();
            tb_dbName.Text = dr["DatabaseName"].ToString();
        }
    }
}

After clicking btn_save data is saved in XML file but, when I'm clicking on btn_back can't see data in the fields of form. What I have to do properly in btn_back_click ?

Use a DataSet like this can solve your problem:

private void btn_back_Click(object sender, EventArgs e)
{
   string path = "D:\\DatabaseInfo.xml";
   var xmlFile = XmlReader.Create(path);
   DataSet ds = new DataSet();
   ds.ReadXml(xmlFile);
   foreach (DataRow dr in ds.Tables[0].Rows)
   {
     tb_serverName.Text = dr["ServerName"].ToString();
     tb_userId.Text = dr["UserId"].ToString();
     tb_pwd.Text = dr["Password"].ToString();
     tb_dbName.Text = dr["DatabaseName"].ToString();
   }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM