DataTable和xml互转

    技术2022-05-20  48

    现在DataTable 存储和读取为XML非常方便,在网络中传输直接访问数据库,导致数据的安全性问题。如果通过中间软件转换下再传输就大为好多了。DataTable 存储为XML先建立table , 建立结构,建立writer,就可以了

          private string DT2XML()        {            DataTable dt = new DataTable("TestDB");            DataColumn dc1 = new DataColumn("itemID", Type.GetType("System.String"));            DataColumn dc2 = new DataColumn("itemName", Type.GetType("System.String"));            dt.Columns.Add(dc1);            dt.Columns.Add(dc2);            for (int i = 0; i <5; i++)            {                DataRow dr = dt.NewRow();                dr["itemID"] = i.ToString();                dr["itemName"] = "TestXML->"+i.ToString();                dt.Rows.Add(dr);            }            string xmlstr;            System.IO.StringWriter writer = new System.IO.StringWriter();            dt.WriteXml(writer);            xmlstr = writer.ToString();            return xmlstr;        }

    读取也类似,但要先建立好打DataTable的结构再读取。

            private void XML2DT(string strXml)        {                        DataTable dt = new DataTable("TestDB");            DataColumn dc1 = new DataColumn("itemID", Type.GetType("System.String"));            DataColumn dc2 = new DataColumn("itemName", Type.GetType("System.String"));            dt.Columns.Add(dc1);            dt.Columns.Add(dc2);            System.IO.StringReader reader = new System.IO.StringReader(strXml);            dt.ReadXml(reader);

                dataGridView1.DataSource = dt;        }

     


    最新回复(0)