日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

使用.NET读取XML文件

發布時間:2023/12/19 asp.net 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用.NET读取XML文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 介紹

    本文中我將介紹在ASP.NET應用程序中如何讀取XML文件,這是一個十分有用的技巧。使用這個技巧,我們能夠定制我們的應用程序的配置文件,也可以讀取那些保存在XML文件中的數據。

    概論

    下面的代碼將使用XmlTextReader對象將磁盤文件中的數據讀取到XmlDocument對象中。XmlTextReader對象在功能上和StreamReader及BinaryReader對象十分相似,只不過它是專為讀取XML文件而特別設計的。除此以外,XmlTextReader對象還有其他一些與XMl相關的特性。例如,代碼中使用到的WhitespaceHandling屬性告訴應用程序不要為XML文件中多余的空格建立節點。

    下面的代碼使用XmlTextReader對象的DocumentElement屬性來查找XML文檔的樹狀表達形式的根節點。之后,遞歸地調用AddWithChildren方法將將節點及它的子節點一同添加到listbox中。

    下面的代碼還包含了屬性的處理。屬性節點并不包含在一個XmlDocument對象的節點的子節點集合中。因而,你只能使用XmlNode對象的Attributes屬性獲得屬性節點集合。獲取了屬性節點集合后,代碼使用XmlNamedNodeMap對象來保存這個集合。這個對象能夠保存任何類型的XmlNode對象的任何集合。

    代碼列表

    private void btnLoad_Click(object sender, System.EventArgs e)

    {

    XmlTextReader reader = new XmlTextReader(

    Server.MapPath("mycompany.xml"));



    reader.WhitespaceHandling = WhitespaceHandling.None;

    XmlDocument xmlDoc = new XmlDocument();

    //將文件加載到XmlDocument對象中

    xmlDoc.Load(reader);

    //關閉連接

    reader.Close();

    //向listbox中添加代表文檔的元素

    lbNodes.Items.Add("XML Document");

    //查找根節點,并將它及它的子節點一同添加到listbox中

    XmlNode xnod = xmlDoc.DocumentElement;

    AddWithChildren(xnod,1);

    }



    private void AddWithChildren(XmlNode xnod, Int32 intLevel)

    {

    //將節點及它的子節點一同添加到listbox中

    //intLevel 控制縮進的深度

    XmlNode xnodWorking;

    String strIndent = new string('' '',2 * intLevel);

    //如果節點有值,讀取它的值

    string strValue = (string) xnod.Value;

    if(strValue != null)

    {

    strValue = " : " + strValue;

    }

    //將節點的詳細信息添加到ListBox中

    lbNodes.Items.Add(strIndent + xnod.Name + strValue);

    //如果是元素節點,獲取它的屬性

    if (xnod.NodeType == XmlNodeType.Element)

    {

    XmlNamedNodeMap mapAttributes = xnod.Attributes;

    //將節點屬性添加到ListBox中

    foreach(XmlNode xnodAttribute in mapAttributes)

    {

    lbNodes.Items.Add(strIndent + " " + xnodAttribute.Name +

    " : " + xnodAttribute.Value);

    }

    //如果還有子節點,就遞歸地調用這個程序

    if(xnod.HasChildNodes)

    {

    xnodWorking = xnod.FirstChild;

    while (xnodWorking != null)

    {

    AddWithChildren(xnodWorking, intLevel +1);

    xnodWorking = xnodWorking.NextSibling;

    }

    }

    }

    }

    }
  • 總結

    以上是生活随笔為你收集整理的使用.NET读取XML文件的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。