如何修改和儲存與 XmlDocument 類別中的 XML。EXE 公用程式來

文章翻譯 文章翻譯
文章編號: 301233 - 檢視此文章適用的產品。
本文曾發行於 CHT301233
這份文件是由下列項目所指向。NET Framework 類別文件庫的命名空間:
全部展開 | 全部摺疊

在此頁中

結論

這個範例說明如何更新及儲存的 XMLXmlDocument類別。

需求

以下概括列出建議的硬體的軟體,網路基礎結構,並將需要的 service pack:
  • Microsoft Windows 2000 專業版,Windows 2000 Server 中,Windows 2000 進階伺服器或 Windows NT 4.0 伺服器
  • Microsoft Visual Studio。NET
本文假設您已熟悉下列主題:
  • XML 的術語
  • 建立及讀取 XML 檔案
  • 文件物件模型 (DOM)

若要儲存 XML 使用 XmlDocument 類別

  1. 建立新的 Visual Basic 或 C# 主控台應用程式中Visual Studio。NET 中。
  2. 請確定專案參考
  3. 讓您不需要限定稍後在程式碼中的XmlTextReader宣告,請使用上的Xml命名空間的Imports陳述式。您必須使用Imports陳述式,以任何其他宣告之前。
    Visual Basic。NET 程式碼
    Imports System.Xml
    C# 的程式碼
    using System.Xml;
    
  4. 建立新的XmlDocument類別,並使用Load方法來載入它。

    XmlDocument類別代表 XML 文件,並已載入的方法,從檔案、 資料流或XmlReader載入文件。

    Visual Basic。NET 程式碼
    Dim myXmlDocument as XmlDocument = new XmlDocument()
    myXmlDocument.Load ("books.xml")
    
    C# 的程式碼
    XmlDocument myXmlDocument = new XmlDocument();
    myXmlDocument.Load ("books.xml");
    
    請注意,雖然 Books.xml 檔案用在這裡,您可以建立Books.xml 檔案。範例 Books.xml 檔案並非視力Studio。NET 和。NET Framework 軟體開發套件 (SDK)。
  5. XmlNode物件提供方法和屬性來操作節點。使用XmlNode傳回的物件XmlDocumentDocumentElement屬性來操作 XML 節點。
    Visual Basic。NET 程式碼
    Dim node as XmlNode
    node = myXmlDocument.DocumentElement
    
    C# 的程式碼
    XmlNode node;
    node = myXmlDocument.DocumentElement;
    
  6. 逐一查看文件項目子系,尋找"price"的所有節點。使用每個迴圈建構以ChildNodes物件的屬性節點,尋找名稱] 屬性為等於"price"的所有節點。兩倍的價格活頁簿。
    Visual Basic。NET 程式碼
    Dim node2 As XmlNode 'Used for internal loop.
    Dim nodePriceText As XmlNode
    For Each node In node.ChildNodes
       'Find the price child node.
       For Each node2 In node.ChildNodes
          If node2.Name = "price" Then
             '                    nodePriceText = node2.InnerText
             Dim price As Decimal
             price = System.Decimal.Parse(node2.InnerText)
    
             ' Double the price.
             Dim newprice As String
             newprice = CType(price * 2, Decimal).ToString("#.00")
             Console.WriteLine("Old Price = " & node2.InnerText & Strings.Chr(9) & "New price = " & newprice)
             node2.InnerText = newprice
          End If
       Next
    Next
    
    C# 的程式碼
    foreach(XmlNode node1 in node.ChildNodes)
       foreach (XmlNode node2 in node1.ChildNodes)
          if (node2.Name == "price")
             {
                Decimal price = Decimal.Parse(node2.InnerText);
                // Increase all the book prices by 20%
                String newprice = ((Decimal)price*(new Decimal(1.20))).ToString("#.00");
                Console.WriteLine("Old Price = " + node2.InnerText + "\tNew price = " + newprice);
                node2.InnerText = newprice;
              }
    
  7. 使用XmlDocument類別的Save方法,將已修改的 XML 儲存至新的檔名為InflatedPriceBooks.xml。

    您可以使用Save方法將 XML 資料儲存到檔案、 資料流,以及XmlWriters
    Visual Basic。NET 程式碼
    myXmlDocument.Save("InflatedPriceBooks.xml")
    
    C# 的程式碼
    myXmlDocument.Save("InflatedPriceBooks.xml");
    
  8. 建置並執行您的專案。

?考

如需詳細資訊,請造訪下列網站取得:
在 XML。NET:。NET Framework 的 XML 類別並 C# 提供簡單、 可調整資料操作

文件物件模型 (核心) 層級 1

文件物件模型的核心

XmlDocument 類別

XmlNode 類別

XML 文件物件模型 (DOM)

屬性

文章編號: 301233 - 上次校閱: 2012年6月12日 - 版次: 1.0
這篇文章中的資訊適用於:
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
關鍵字:?
kbhowtomaster kbmt KB301233 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:301233
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com