SN | 類 | 描述 |
---|---|---|
1 | XmlAttribute | 表示屬性。屬性的有效值和默認值在文檔類型定義(DTD)或模式中定義。 |
2 | XmlCDataSection | 表示一個CDATA部分。 |
3 | XmlCharacterData | 提供由幾個類使用的文本處理方法。 |
4 | XMLCOMMENT | 表示一個XML注釋的內(nèi)容。 |
5 | XmlConvert | 對XML名稱進行編碼和解碼,并提供在公共語言運行時類型和XML模式定義語言(XSD)類型之間進行轉(zhuǎn)換的方法。轉(zhuǎn)換數(shù)據(jù)類型時,返回的值與語言環(huán)境無關(guān)。 |
6 | XmlDeclaration | 表示XML聲明節(jié)點<?xml version ='1.0'...?>。 |
7 | XmlDictionary | 實現(xiàn)一本字典用來優(yōu)化 Windows 通信基礎(chǔ)(WCF) 的 XML 讀取器/編寫器實現(xiàn)。 |
8 | XmlDictionaryReader | Windows Communication Foundation(WCF)從XmlReader派生來進行序列化和反序列化的抽象類。 |
9 | XmlDictionaryWriter | 表示W(wǎng)indows Communication Foundation(WCF)從XmlWriter派生來進行序列化和反序列化的抽象類。 |
10 | XmlDocument | 表示XML文檔。 |
11 | XmlDocumentFragment | 表示對樹插入操作有用的輕量級對象。 |
12 | XmlDocumentType | 表示文檔類型聲明。 |
13 | XmlElement | 表示一個元素。 |
14 | XmlEntity | 表示一個實體聲明,如<!ENTITY ...>。 |
15 | XmlEntityReference | 表示一個實體引用節(jié)點。 |
16 | XmlException | 返回有關(guān)最后一個異常的詳細信息。 |
17 | XmlImplementation | 定義一組XmlDocument對象的上下文。 |
18 | XmlLinkedNode | 獲取此節(jié)點之前或之后的節(jié)點。 |
19 | XmlNode | 表示XML文檔中的單個節(jié)點。 |
20 | XmlNodeList | 表示節(jié)點的有序集合。 |
21 | XmlNodeReader | 表示提供對XmlNode中的XML數(shù)據(jù)的快速,非緩存轉(zhuǎn)發(fā)訪問的閱讀器。 |
22 | XmlNotation | 表示一個注釋聲明,如<!NOTATION ...>。 |
23 | XmlParserContext | 提供XmlReader解析XML片段所需的所有上下文信息。 |
24 | XmlProcessingInstruction | 表示處理指令,XML定義為在文檔的文本中保留處理器特定的信息。 |
25 | XmlQualifiedName | 表示一個XML限定名稱。 |
26 | XmlReader | 表示一個閱讀器,提供了快速,非緩存,只進到XML數(shù)據(jù)訪問。 |
27 | XmlReaderSettings | 指定一組要在Create方法創(chuàng)建的XmlReader對象上支持的要素。 |
28 | XmlResolver | 解析由統(tǒng)一資源標識符(URI)命名的外部XML資源。 |
29 | XmlSecureResolver | 有助于通過封裝XmlResolver對象并限制底層XmlResolver有權(quán)訪問的資源來保護XmlResolver的另一個實現(xiàn)。 |
30 | XmlSignificantWhitespace | 表示混合內(nèi)容節(jié)點中的標記之間或xml:space ='preserve'范圍內(nèi)的空白空間中的空格。這也稱為有效的空白空間。 |
31 | XmlText | 表示元素或?qū)傩缘奈谋緝?nèi)容。 |
32 | XmlTextReader | 表示提供對XML數(shù)據(jù)的快速,非緩存,僅轉(zhuǎn)發(fā)訪問的閱讀器。 |
33 | XmlTextWriter | 代表作家提供了一個快速,非緩存,只進生成包含符合W3C可擴展標記語言(XML)1.0和XML中建議的命名空間XML數(shù)據(jù)流或文件的方式。 |
34 | XmlUrlResolver | 解析由統(tǒng)一資源標識符(URI)命名的外部XML資源。 |
35 | XmlWhitespace | 代表元素內(nèi)容中的空白。 |
36 | XmlWriter | 表示提供快速,非緩存,僅轉(zhuǎn)發(fā)方式生成包含XML數(shù)據(jù)的流或文件的寫入程序。 |
37 | XmlWriterSettings | 指定一組要在XmlWriter.Create方法創(chuàng)建的XmlWriter對象上支持的要素。 |
<?xml version="1.0"?> <collection shelf="New Arrivals"> <movie title="Enemy Behind"> <type>War, Thriller</type> <format>DVD</format> <year>2003</year> <rating>PG</rating> <stars>10</stars> <description>Talk about a US-Japan war</description> </movie> <movie title="Transformers"> <type>Anime, Science Fiction</type> <format>DVD</format> <year>1989</year> <rating>R</rating> <stars>8</stars> <description>A schientific fiction</description> </movie> <movie title="Trigun"> <type>Anime, Action</type> <format>DVD</format> <episodes>4</episodes> <rating>PG</rating> <stars>10</stars> <description>Vash the Stampede!</description> </movie> <movie title="Ishtar"> <type>Comedy</type> <format>VHS</format> <rating>PG</rating> <stars>2</stars> <description>Viewable boredom</description> </movie> </collection>
此示例演示從文件movies.xml中讀取XML數(shù)據(jù)。
執(zhí)行以下步驟:
將movies.xml文件添加到應(yīng)用程序的bin \ Debug文件夾中。
在Form1.vb文件中導入System.Xml命名空間。
在表單中添加標簽,并將其文字更改為“Movies Galore”。
添加三個列表框和三個按鈕,以顯示來自xml文件的電影的標題,類型和描述。
使用代碼編輯器窗口添加以下代碼。
Imports System.Xml Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' Set the caption bar text of the form. Me.Text = "tutorialspoint.com" End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ListBox1().Items.Clear() Dim xr As XmlReader = XmlReader.Create("movies.xml") Do While xr.Read() If xr.NodeType = XmlNodeType.Element AndAlso xr.Name = "movie" Then ListBox1.Items.Add(xr.GetAttribute(0)) End If Loop End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click ListBox2().Items.Clear() Dim xr As XmlReader = XmlReader.Create("movies.xml") Do While xr.Read() If xr.NodeType = XmlNodeType.Element AndAlso xr.Name = "type" Then ListBox2.Items.Add(xr.ReadElementString) Else xr.Read() End If Loop End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click ListBox3().Items.Clear() Dim xr As XmlReader = XmlReader.Create("movies.xml") Do While xr.Read() If xr.NodeType = XmlNodeType.Element AndAlso xr.Name = "description" Then ListBox3.Items.Add(xr.ReadElementString) Else xr.Read() End If Loop End Sub End Class
使用Microsoft Visual Studio工具欄上的“開始”按鈕執(zhí)行并運行上述代碼。 單擊按鈕將顯示文件中電影的標題,類型和描述。
XmlWriter類用于將XML數(shù)據(jù)寫入流,文件或TextWriter對象。 它也以只向前,非緩存的方式工作。
讓我們通過在運行時添加一些數(shù)據(jù)來創(chuàng)建一個XML文件。 執(zhí)行以下步驟:
在窗體中添加WebBrowser控件和按鈕控件。
將按鈕的Text屬性更改為顯示作者文件。
在代碼編輯器中添加以下代碼。
Imports System.Xml Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' Set the caption bar text of the form. Me.Text = "tutorialspoint.com" End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim xws As XmlWriterSettings = New XmlWriterSettings() xws.Indent = True xws.NewLineOnAttributes = True Dim xw As XmlWriter = XmlWriter.Create("authors.xml", xws) xw.WriteStartDocument() xw.WriteStartElement("Authors") xw.WriteStartElement("author") xw.WriteAttributeString("code", "1") xw.WriteElementString("fname", "Zara") xw.WriteElementString("lname", "Ali") xw.WriteEndElement() xw.WriteStartElement("author") xw.WriteAttributeString("code", "2") xw.WriteElementString("fname", "Priya") xw.WriteElementString("lname", "Sharma") xw.WriteEndElement() xw.WriteStartElement("author") xw.WriteAttributeString("code", "3") xw.WriteElementString("fname", "Anshuman") xw.WriteElementString("lname", "Mohan") xw.WriteEndElement() xw.WriteStartElement("author") xw.WriteAttributeString("code", "4") xw.WriteElementString("fname", "Bibhuti") xw.WriteElementString("lname", "Banerjee") xw.WriteEndElement() xw.WriteStartElement("author") xw.WriteAttributeString("code", "5") xw.WriteElementString("fname", "Riyan") xw.WriteElementString("lname", "Sengupta") xw.WriteEndElement() xw.WriteEndElement() xw.WriteEndDocument() xw.Flush() xw.Close() WebBrowser1.Url = New Uri(AppDomain.CurrentDomain.BaseDirectory + "authors.xml") End Sub End Class
使用Microsoft Visual Studio工具欄上的“開始”按鈕執(zhí)行并運行上述代碼。 單擊顯示作者文件將在Web瀏覽器上顯示新創(chuàng)建的authors.xml文件。
根據(jù)文檔對象模型(DOM),XML文檔由節(jié)點和節(jié)點的屬性組成。 XmlDocument類用于實現(xiàn).Net框架的XML DOM解析器。 它還允許您通過插入,刪除或更新文檔中的數(shù)據(jù)來修改現(xiàn)有的XML文檔。
以下是XmlDocument類的一些常用方法:
SN | 方法名稱和說明 |
---|---|
1 | AppendChild 將指定的節(jié)點添加到此節(jié)點的子節(jié)點列表的末尾。 |
2 | CreateAttribute(String) 使用指定的名稱創(chuàng)建XmlAttribute。 |
3 | CreateComment 創(chuàng)建包含指定數(shù)據(jù)的XmlComment。 |
4 | CreateDefaultAttribute 創(chuàng)建具有指定前綴,本地名稱和命名空間URI的默認屬性。 |
5 | CreateElement(String) 創(chuàng)建具有指定名稱的元素。 |
6 | CreateNode(String, String, String) 創(chuàng)建具有指定節(jié)點類型,Name和NamespaceURI的XmlNode。 |
7 | CreateNode(XmlNodeType, String, String) 創(chuàng)建具有指定的XmlNodeType,Name和NamespaceURI的XmlNode。 |
8 | CreateNode(XmlNodeType, String, String, String) 創(chuàng)建具有指定的XmlNodeType,Prefix,Name和NamespaceURI的XmlNode。 |
9 | CreateProcessingInstruction 創(chuàng)建具有指定名稱和數(shù)據(jù)的XmlProcessingInstruction。 |
10 | CreateSignificantWhitespace 創(chuàng)建一個XmlSignificantWhitespace節(jié)點。 |
11 | createTextNode 創(chuàng)建具有指定文本的XMLTEXT。 |
12 | CreateWhitespace 創(chuàng)建一個XmlWhitespace節(jié)點。 |
13 | CreateXmlDeclaration 創(chuàng)建一個具有指定值的XmlDeclaration節(jié)點。 |
14 | GetElementById 獲取具有指定ID的XmlElement。 |
15 | GetElementsByTagName(String) 返回一個包含與指定名稱匹配的所有后代元素的列表的XmlNodeList。 |
16 | GetElementsByTagName(String, String) 返回一個包含與指定名稱匹配的所有后代元素的列表的XmlNodeList。 |
17 | InsertAfter 在指定的引用節(jié)點之后立即插入指定的節(jié)點。 |
18 | InsertBefore 在指定的引用節(jié)點之前插入指定的節(jié)點。 |
19 | Load(Stream) 從指定的流裝載XML文檔。 |
20 | Load(String) 從指定的TextReader加載XML文檔。 |
21 | Load(TextReader) 從指定的TextReader加載XML文檔。 |
22 | Load(XmlReader) 從指定的XmlReader加載XML文檔。 |
23 | LoadXml 從指定的字符串加載XML文檔。 |
24 | PrependChild 將指定的節(jié)點添加到此節(jié)點的子節(jié)點列表的開頭。 |
25 | ReadNode 基于XmlReader中的信息創(chuàng)建XmlNode對象。讀取器必須位于節(jié)點或?qū)傩陨稀? |
26 | RemoveAll 刪除當前節(jié)點的所有子節(jié)點和/或?qū)傩浴? |
27 | RemoveChild 刪除指定的子節(jié)點。 |
28 | ReplaceChild 將子節(jié)點oldChild替換為newChild節(jié)點。 |
29 | Save(Stream) 保存XML文檔到指定的流。 |
30 | Save(String) 將XML文檔保存到指定的文件。 |
31 | Save(TextWriter) 將XML文檔保存到指定的TextWriter。 |
32 | Save(XmlWriter) 將XML文檔保存到指定的XmlWriter。 |
在本示例中,讓我們在xml文檔authors.xml中插入一些新節(jié)點,然后在列表框中顯示所有作者的名字。
執(zhí)行以下步驟:
將authors.xml文件添加到應(yīng)用程序的bin / Debug文件夾中(如果您已經(jīng)嘗試了最后一個示例,應(yīng)該在那里)
導入System.Xml命名空間
在表單中添加列表框和按鈕控件,并將按鈕控件的text屬性設(shè)置為“顯示作者”。
使用代碼編輯器添加以下代碼。
Imports System.Xml Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' Set the caption bar text of the form. Me.Text = "tutorialspoint.com" End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ListBox1.Items.Clear() Dim xd As XmlDocument = New XmlDocument() xd.Load("authors.xml") Dim newAuthor As XmlElement = xd.CreateElement("author") newAuthor.SetAttribute("code", "6") Dim fn As XmlElement = xd.CreateElement("fname") fn.InnerText = "Bikram" newAuthor.AppendChild(fn) Dim ln As XmlElement = xd.CreateElement("lname") ln.InnerText = "Seth" newAuthor.AppendChild(ln) xd.DocumentElement.AppendChild(newAuthor) Dim tr As XmlTextWriter = New XmlTextWriter("movies.xml", Nothing) tr.Formatting = Formatting.Indented xd.WriteContentTo(tr) tr.Close() Dim nl As XmlNodeList = xd.GetElementsByTagName("fname") For Each node As XmlNode In nl ListBox1.Items.Add(node.InnerText) Next node End Sub End Class
使用Microsoft Visual Studio工具欄上的“開始”按鈕執(zhí)行并運行上述代碼。 單擊“顯示作者”按鈕將顯示所有作者的名字,包括我們在運行時添加的作者。
更多建議: