zoukankan      html  css  js  c++  java
  • XML与DataTable相互转换

    1.DataTable转XML  

         

       #region DataTableToXml
            /// <summary>
            /// 将DataTable对象转换成XML字符串
            /// </summary>
            /// <param name="ds">DataSet对象</param>
            /// <returns>XML字符串</returns>
            public static string DataTableToXml(DataTable dt,string sName)
            {
                if (dt != null)
                {
                    MemoryStream ms = null;
                    XmlTextWriter XmlWt = null;
                    try
                    {
                        ms = new MemoryStream();
                        //根据ms实例化XmlWt
                        XmlWt = new XmlTextWriter(ms, System.Text.Encoding.Unicode);
                        //获取ds中的数据
                        dt.TableName = Sql.IsEmptyString(sName) ? "dt2xml" : sName;
                        dt.WriteXml(XmlWt, XmlWriteMode.WriteSchema);
                        int count = (int)ms.Length;
                        byte[] temp = new byte[count];
                        ms.Seek(0, SeekOrigin.Begin);
                        ms.Read(temp, 0, count);
                        //返回Unicode编码的文本
                        System.Text.UnicodeEncoding ucode = new System.Text.UnicodeEncoding();
                        string returnValue = ucode.GetString(temp).Trim();
                        return returnValue;
                    }
                    catch (System.Exception ex)
                    {
                        throw ex;
                    }
                    finally
                    {
                        //释放资源
                        if (XmlWt != null)
                        {
                            XmlWt.Close();
                            ms.Close();
                            ms.Dispose();
                        }
                    }
                }
                else
                {
                    return "";
                }
            }
            #endregion

    2.XML转DataSet

    #region Xml To DataSet
            public static DataSet XmlToDataSet(string xmlString)
            {
                XmlDocument xmldoc = new XmlDocument();
                xmldoc.LoadXml(xmlString);
                StringReader stream = null;
                XmlTextReader reader = null;
                try
                {
                    DataSet xmlDS = new DataSet();
                    stream = new StringReader(xmldoc.InnerXml);
                    reader = new XmlTextReader(stream);
                    xmlDS.ReadXml(reader);
                    reader.Close();
                    return xmlDS;
                }
                catch (System.Exception ex)
                {
                    reader.Close();
                    throw ex;
                }
            }
            #endregion
  • 相关阅读:
    Day2----Python常用模块
    Day1--Python基础知识
    AES加密
    MOS管基本MOS管基本认识(快速入门)认识(快速入门)
    printf定义宏方便调试
    ESP8266上电透传与手动透传AT指令设置笔记
    三态门与高阻态
    步进电机原理
    关于stm32 MCU申请动态内存malloc的认识
    高低位数据分离的两种方法
  • 原文地址:https://www.cnblogs.com/AbelAngelo/p/11359481.html
Copyright © 2011-2022 走看看