asp.net使用DataSet的ReadXml读取XML文件及Stream流的方法
2016-08-05来源:易贤网

本文实例讲述了asp.net使用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

希望本文所述对大家asp.net程序设计有所帮助。

2026公务员·事业单位培训课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息