zoukankan      html  css  js  c++  java
  • 利用DataSet的ReadXml轻松读取XML文件及Stream流

            string strxml = "<xml><m><a>1</a><b>2</b></m><m><a>11</a><b>22</b></m><m><a>111</a><b>222</b></m></xml>";
            
            DataSet ds = new DataSet();
            Stream stream = new MemoryStream(Encoding.Default.GetBytes(strxml));
            ds.ReadXml(stream);
    
            GridView1.DataSource = ds;
            GridView1.DataBind();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                DataSet ds = new DataSet();
                TextReader reader = new StringReader(@"
                            <music>
                              <song>
                                <artist>The Chi-lites</artist>
                                <genre>Soul</genre>
                                <album>A lonely man</album>
                                <year>1972</year>
                              </song>
                              <song>
                                <artist>Babyface</artist>
                                <genre>R&B</genre>
                                <album>unknown</album>
                                <year></year>
                              </song>
                              <song>
                                <artist>Babyface</artist>
                                <genre>R&B</genre>
                                <album>The essential babyface</album>
                                <year>2001</year>
                              </song>
                              <song>
                                <artist>Babyface</artist>
                                <genre>R&B</genre>
                                <album>Grown and sexy</album>
                                <year>2005</year>
                              </song>
                              <song>
                                <artist>Maria Arredondo</artist>
                                <genre>Pop</genre>
                                <album>Not going under</album>
                                <year>2004</year>
                              </song>
                              <song>
                                <artist>Leona Lewis</artist>
                                <genre>Pop</genre>
                                <album>Unknown</album>
                                <year>2008</year>
                              </song>
                              <song>
                                <artist>Usher</artist>
                                <genre>R&B</genre>
                                <album>Usher</album>
                                <year>2008</year>
                              </song>
                              <song>
                                <artist>Christina Aguilera</artist>
                                <genre>Blues</genre>
                                <album>Back to basics</album>
                                <year>2004</year>
                              </song>
                              <song>
                                <artist>Sting</artist>
                                <genre>Pop</genre>
                                <album>Shape of my heart</album>
                                <year></year>
                              </song>
                            </music>
                            ");
                //读取Xml字符串 用来接收WebService返回数据
                ds.ReadXml(reader, XmlReadMode.Auto);
    
                //生成Xml文件
                //ds.WriteXml(Server.MapPath("xml/song_bak.xml"));
                GridView1.DataSource = ds;
                GridView1.DataBind();
            }
        }
        #region 接口返回的Xml转换成DataSet
        /// <summary>
        /// 返回的Xml转换成DataSet
        /// </summary>
        /// <param name="text">Xml字符</param>
        /// <returns></returns>
        private DataSet GetDataSet(string text)
        {
            try
            {
                XmlTextReader reader = new XmlTextReader(new StringReader(text));
                reader.WhitespaceHandling = WhitespaceHandling.None;
                DataSet ds = new DataSet();
                ds.ReadXml(reader);
                reader.Close();
                ds.Dispose();
                return ds;
            }
            catch
            {
                return null;
            }
        }
        #endregion
    
    
        #region 后台提交数据且获取接口返回的数据
        /// <summary>  
        /// 后台提交数据且获取接口返回的数据 
        /// </summary>  
        /// <param name="relativePath">地址</param>  
        /// <returns></returns>  
        public static string GetRequestString(string relativePath)
        {
            string requestUrl = relativePath;
            try
            {
                // 创建一个HTTP请求
                HttpWebRequest request = (System.Net.HttpWebRequest)WebRequest.Create(requestUrl);
                request.Method = "GET";
    
                StreamReader jsonStream = new StreamReader(request.GetResponse().GetResponseStream());
                string jsonObject = jsonStream.ReadToEnd();
    
                return jsonObject;
            }
            catch
            {
                return string.Empty;
            }
        }
        #endregion  

  • 相关阅读:
    SSM商城项目(二)
    SSM商城项目(一)
    Solr
    Lucene
    TP5分页函数paginate中的each()传参
    微信小程序+php 授权登陆,完整代码
    thinkphp5 + barcode 生成条形码
    微信小程序-获取当前位置和城市名
    PHP查询附近的人及其距离的实现方法
    thinkphp5连接sql server
  • 原文地址:https://www.cnblogs.com/smartsmile/p/6234301.html
Copyright © 2011-2022 走看看