欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

.net如何讀寫(xiě)xml文檔-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān).net如何讀寫(xiě)xml文檔,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

為郯城等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及郯城網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)、郯城網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

一  .Net框架中與XML有關(guān)的命名空間

System.Xml
包含了一些和XML文檔的讀寫(xiě)操作相關(guān)的類(lèi),它們分別是:XmlReader、XmlTextReader、XmlValidatingReader、XmlNodeReader、XmlWriter、XmlTextWriter 以及 XmlNode(它的子類(lèi)包括:XmlDocument、XmlDataDocument、XmlDocumentFragment)等類(lèi)。

System.Xml.Schema
包含了和XML模式相關(guān)的類(lèi),這些類(lèi)包括XmlSchema、XmlSchemaAll、XmlSchemaXPath以及XmlSchemaType等類(lèi)。

System.Xml.Serialization
包含了和XML文檔的序列化和反序列化操作相關(guān)的類(lèi)。
序列化:將XML格式的數(shù)據(jù)轉(zhuǎn)化為流格式的數(shù)據(jù),并能在網(wǎng)絡(luò)中傳輸;
反序列化:完成相反的操作,即將流格式的數(shù)據(jù)還原成XML格式的數(shù)據(jù)。

System.Xml.Xpath
包含了XPathDocument、XPathExression、XPathNavigator以及XPathNodeIterator等類(lèi),這些類(lèi)能完成XML文檔的導(dǎo)航功能。
(在XPathDocument類(lèi)的協(xié)助下,XPathNavigator類(lèi)能完成快速的XML文檔導(dǎo)航功能,該類(lèi)為程序員提供了許多Move方法以完成導(dǎo)航功能。)

System.Xml.Xsl
完成XSLT的轉(zhuǎn)換功能。
二  寫(xiě)XML文檔的方法
用XmlWriter類(lèi)實(shí)現(xiàn)寫(xiě)操作,該類(lèi)包含了寫(xiě)XML文檔所需的方法和屬性,它是XmlTextWriter類(lèi)和XmlNodeWriter類(lèi)的基類(lèi)。

寫(xiě)操作的有些方法是成對(duì)出現(xiàn)的,比如你要寫(xiě)入一個(gè)元素,首先調(diào)用WriteStartElement方法—>寫(xiě)入實(shí)際內(nèi)容—>調(diào)用WriteEndElement方法結(jié)束。

下面通過(guò)其子類(lèi) XmlTextWriter 來(lái)說(shuō)明如何寫(xiě)XML文檔。

XmlTextWriter textWriter = New XmlTextWriter("C:\\myXmFile.xml", null);

在創(chuàng)建完對(duì)象后,我們調(diào)用WriterStartDocument方法開(kāi)始寫(xiě)XML文檔;
在完成寫(xiě)工作后,就調(diào)用WriteEndDocument結(jié)束寫(xiě)過(guò)程,并調(diào)用Close方法將它關(guān)閉。

在寫(xiě)的過(guò)程中,我們可以:
調(diào)用WriteComment方法來(lái)添加說(shuō)明;
通過(guò)調(diào)用WriteString方法來(lái)添加一個(gè)字符串;
通過(guò)調(diào)用WriteStartElement和WriteEndElement方法對(duì)來(lái)添加一個(gè)元素;
通過(guò)調(diào)用WriteStartAttribute和WriteEndAttribute方法對(duì)來(lái)添加一個(gè)屬性;
通過(guò)調(diào)用WriteNode方法來(lái)添加整的一個(gè)節(jié)點(diǎn);
其它的寫(xiě)的方法還包括WriteProcessingInstruction和WriteDocType等等。

下面的示例介紹如何具體運(yùn)用這些方法來(lái)完成XML文檔的寫(xiě)工作。

代碼如下:

using System;
using System.Xml; 
namespace WriteXML
{
 class Class1
 {
  static void Main( string[] args )
  {
   try
   {
    // 創(chuàng)建XmlTextWriter類(lèi)的實(shí)例對(duì)象
    XmlTextWriter textWriter = new XmlTextWriter("C:\\w3sky.xml", null);
    textWriter.Formatting = Formatting.Indented;
    // 開(kāi)始寫(xiě)過(guò)程,調(diào)用WriteStartDocument方法
    textWriter.WriteStartDocument(); 
    // 寫(xiě)入說(shuō)明
    textWriter.WriteComment("First Comment XmlTextWriter Sample Example");
    textWriter.WriteComment("w3sky.xml in root dir");  
    //創(chuàng)建一個(gè)節(jié)點(diǎn)
    textWriter.WriteStartElement("Administrator");
    textWriter.WriteElementString("Name", "formble");
    textWriter.WriteElementString("site", "w3sky.com");
    textWriter.WriteEndElement();

    // 寫(xiě)文檔結(jié)束,調(diào)用WriteEndDocument方法
    textWriter.WriteEndDocument();
    // 關(guān)閉textWriter
    textWriter.Close();
   }
   catch(System.Exception e)
   {
    Console.WriteLine(e.ToString());
   }
  }
 }
}

三  讀XML文檔的方法

用XmlTextReader類(lèi)的對(duì)象來(lái)讀取該XML文檔。在創(chuàng)建新對(duì)象的構(gòu)造函數(shù)中指明XML文件的位置即可。

XmlTextReader textReader = new XmlTextReader("C:\\books.xml");

XmlTextReader 類(lèi)中的屬性 NodeType 可以知道其節(jié)點(diǎn)的節(jié)點(diǎn)類(lèi)型。通過(guò)與枚舉類(lèi)型 XmlNodeType 中的元素的比較,可以獲取相應(yīng)節(jié)點(diǎn)的節(jié)點(diǎn)類(lèi)型并對(duì)其完成相關(guān)的操作。

枚舉類(lèi)型 XmlNodeType 中包含了諸如XmlDeclaration、Attribute、CDATA、Element、Comment、Document、DocumentType、Entity、ProcessInstruction以及WhiteSpace等XML項(xiàng)的類(lèi)型。

下面的示例是以讀取"books.xml"文件創(chuàng)建對(duì)象,通過(guò)該xml對(duì)象的Name、BaseURI、Depth、LineNumber等屬性來(lái)獲取相關(guān)信息,并顯示在控制臺(tái)中。(運(yùn)用VS.net開(kāi)發(fā)工具附帶的"books.xml"文件來(lái)作為示例)

代碼如下:

using System;
using System.Xml; 
namespace ReadXml
{
    class Class1
    {
        static void Main( string[] args )
        {
            // 創(chuàng)建一個(gè)XmlTextReader類(lèi)的對(duì)象并調(diào)用Read方法來(lái)讀取XML文件
            XmlTextReader textReader  = new XmlTextReader("C:\\books.xml");
            textReader.Read();
            // 節(jié)點(diǎn)非空則執(zhí)行循環(huán)體
            while ( textReader.Read() )
            {
                // 讀取第一個(gè)元素
                textReader.MoveToElement();
                Console.WriteLine("XmlTextReader Properties Test");
                Console.WriteLine("==================="); 
                // 讀取該元素的屬性并顯示在控制臺(tái)中
                Console.WriteLine("Name:" + textReader.Name);
                Console.WriteLine("Base URI:" + textReader.BaseURI);
                Console.WriteLine("Local Name:" + textReader.LocalName);
                Console.WriteLine("Attribute Count:" + textReader.AttributeCount.ToString());
                Console.WriteLine("Depth:" + textReader.Depth.ToString());
                Console.WriteLine("Line Number:" + textReader.LineNumber.ToString());
                Console.WriteLine("Node Type:" + textReader.NodeType.ToString());
                Console.WriteLine("Attribute Count:" + textReader.Value.ToString());
            }
        }
    }
}

四  運(yùn)用XmlDocument類(lèi)

XmlDocument類(lèi)代表了XML文檔,它能完成與整個(gè)XML文檔相關(guān)的各類(lèi)操作,同時(shí)和其相關(guān)的XmlDataDocument類(lèi)也是非常重要的,值得深入研究。 該類(lèi)包含了Load、LoadXml以及Save等重要的方法。

Load方法: 可以從一個(gè)字符串指定的XML文件或是一個(gè)流對(duì)象、一個(gè)TextReader對(duì)象、一個(gè)XmlReader對(duì)象導(dǎo)入XML數(shù)據(jù)。
LoadXml方法: 則完成從一個(gè)特定的XML文件導(dǎo)入XML數(shù)據(jù)的功能。
Save方法: 則將XML數(shù)據(jù)保存到一個(gè)XML文件中或是一個(gè)流對(duì)象、一個(gè)TextWriter對(duì)象、一個(gè)XmlWriter對(duì)象中。

下面的示例中,用到了XmlDocument類(lèi)對(duì)象的LoadXml方法,它從一個(gè)XML文檔段中讀取XML數(shù)據(jù)并調(diào)用其Save方法將數(shù)據(jù)保存在一個(gè)文件中。

代碼如下:

// 創(chuàng)建一個(gè)XmlDocument類(lèi)的對(duì)象
XmlDocument doc = new XmlDocument();
doc.LoadXml(("<Student type='regular' Section='B'><Name>Tommy Lex</Name></Student>"));
// 保存到文件中
doc.Save("C:\\student.xml");

// 還可以通過(guò)改變Save方法中參數(shù),將XML數(shù)據(jù)顯示在控制臺(tái)中,方法如下: 
doc.Save(Console.Out);
下面的示例中,用到了一個(gè)XmlTextReader對(duì)象,通過(guò)它讀取"books.xml"文件中的XML數(shù)據(jù)。然后創(chuàng)建一個(gè)XmlDocument對(duì)象并載入XmlTextReader對(duì)象,這樣X(jué)ML數(shù)據(jù)就被讀到XmlDocument對(duì)象中了。最后,通過(guò)該對(duì)象的Save方法將XML數(shù)據(jù)顯示在控制臺(tái)中。

XmlDocument doc = new XmlDocument();
// 創(chuàng)建一個(gè)XmlTextReader對(duì)象,讀取XML數(shù)據(jù)
XmlTextReader reader = new XmlTextReader("c:\\books.xml");
reader.Read();
// 載入XmlTextReader類(lèi)的對(duì)象
doc.Load(reader);
// 將XML數(shù)據(jù)顯示在控制臺(tái)中
doc.Save(Console.Out);

xml文件

代碼如下:

<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
  <book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
    <title>The Autobiography of Benjamin Franklin</title>
    <author>
      <first-name>Benjamin</first-name>
      <last-name>Franklin</last-name>
    </author>
    <price>8.99</price>
  </book>
  <book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
    <title>The Confidence Man</title>
    <author>
      <first-name>Herman</first-name>
      <last-name>Melville</last-name>
    </author>
    <price>11.99</price>
  </book>
  <book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
    <title>The Gorgias</title>
    <author>
      <first-name>Sidas</first-name>
      <last-name>Plato</last-name>
    </author>
    <price>9.99</price>
  </book>
</bookstore>

另外一個(gè).net操作xml文件示例

代碼如下:

//設(shè)置配置文件物理路徑
    public string xmlPath = "/manage/spider/config.xml";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            //設(shè)置程序物理路徑+文件物理路徑
            string path = Request.PhysicalApplicationPath + xmlPath;
            //獲取XML元素對(duì)象
            XElement config = XElement.Load(path);
            if (config != null)
            {
                //獲得節(jié)點(diǎn)子元素
                XElement eleAmazonDetailUrl = config.Element("AmazonDetailUrl");
                XElement eleAmazonListUrl = config.Element("AmazonListUrl");
                XElement eleHz = config.Element("Hz");
                XElement eleCount = config.Element("Count");
                //在頁(yè)面上呈現(xiàn)取到的數(shù)據(jù)
                if (eleAmazonDetailUrl != null)
                    TextBox_AmazonDetailUrl.Text = eleAmazonDetailUrl.Value;
                if (eleAmazonListUrl != null)
                    TextBox_AmazonListUrl.Text = eleAmazonListUrl.Value;
                if (eleHz != null)
                    TextBox_Hz.Text = eleHz.Value;
                if (eleCount != null)
                    TextBox_Count.Text = eleCount.Value;
            }
            else
                Response.Write("");
        }
    }
    protected void btn_Save_Click(object sender, EventArgs e)
    {
        //設(shè)置XML文件路徑
        string path = Request.PhysicalApplicationPath + xmlPath;
        //設(shè)置節(jié)點(diǎn)的名稱(chēng)和內(nèi)容
        XElement root = new XElement("Settings",
             new XElement("AmazonDetailUrl", TextBox_AmazonDetailUrl.Text.Trim()),
             new XElement("AmazonListUrl", TextBox_AmazonListUrl.Text.Trim()),
             new XElement("Hz", TextBox_Hz.Text.Trim()),
             new XElement("Count", TextBox_Count.Text.Trim())
                 );
        //將元素序列化到指定路徑的XML文件當(dāng)中
        root.Save(path);
     }

關(guān)于“.net如何讀寫(xiě)xml文檔”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

文章題目:.net如何讀寫(xiě)xml文檔-創(chuàng)新互聯(lián)
文章位置:http://aaarwkj.com/article8/pjsop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站營(yíng)銷(xiāo)、定制網(wǎng)站、動(dòng)態(tài)網(wǎng)站、網(wǎng)站制作虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷(xiāo)型網(wǎng)站建設(shè)
深夜福利在线观看97| 毛茸茸的阴户在线观看| 熟妇高潮一区二区三区| 天天操天天射夜夜爽| 免费午夜福利一区二区| 日韩精品第一区第二区| 二区三区成人在线观看| 久久精品久久精品欧美大片| 免费成人激情在线电影| 中文字慕日韩精品欧美一区 | 热久久精品只有这里有| 亚洲一区在线观看激情| 岛国大片一区二区三区| 国产三级伦理在线播放| 高清免费欧美大片在线观看| 性知音国产精品粉色视频| 自拍偷拍欧美日韩第一页| 亚州无吗一区二区三区| 亚洲激情视频久久精品| 亚洲国产成人综合一区二区三区 | 国产精品对白久久久久粗| 国产又粗又硬又长又爽在线观看 | 国偷蜜桃av一区二区三区| 国产又粗又硬又长又爽在线观看| 色香蕉精品国产综合| 美女性生活免费视频网站| 草草影院最新地址在线观看| 一区二区尤物区亚洲国产精品区| 国产精品大片一区二区三区四区| 国产原创av剧情在线播放| 丰满少妇被激烈的插进去| 青草成人在线视频观看| 亚洲国产自拍精品视频| 午夜福利日本一区二区| 日韩一区中文字幕久久| 欧美成人精品欧美一级乱| 中文字幕人妻日韩在线| 男人自拍天堂在线观看| 欧美a级黄片免费在线观看| 国产精品一区二区日韩新区| 成人福利午夜一区二区|