SN | 類 | 描述 |
---|---|---|
1 | XmlAttribute | 表示屬性。屬性的有效值和默認(rèn)值在文檔類型定義(DTD)或模式中定義。 |
2 | XmlCDataSection | 表示一個(gè)CDATA部分。 |
3 | XmlCharacterData | 提供由幾個(gè)類使用的文本處理方法。 |
4 | XMLCOMMENT | 表示一個(gè)XML注釋的內(nèi)容。 |
5 | XmlConvert | 對(duì)XML名稱進(jìn)行編碼和解碼,并提供在公共語(yǔ)言運(yùn)行時(shí)類型和XML模式定義語(yǔ)言(XSD)類型之間進(jìn)行轉(zhuǎn)換的方法。轉(zhuǎn)換數(shù)據(jù)類型時(shí),返回的值與語(yǔ)言環(huán)境無(wú)關(guān)。 |
6 | XmlDeclaration | 表示XML聲明節(jié)點(diǎn)<?xml version ='1.0'...?>。 |
7 | XmlDictionary | 實(shí)現(xiàn)一本字典用來(lái)優(yōu)化 Windows 通信基礎(chǔ)(WCF) 的 XML 讀取器/編寫(xiě)器實(shí)現(xiàn)。 |
8 | XmlDictionaryReader | Windows Communication Foundation(WCF)從XmlReader派生來(lái)進(jìn)行序列化和反序列化的抽象類。 |
9 | XmlDictionaryWriter | 表示W(wǎng)indows Communication Foundation(WCF)從XmlWriter派生來(lái)進(jìn)行序列化和反序列化的抽象類。 |
10 | XmlDocument | 表示XML文檔。 |
11 | XmlDocumentFragment | 表示對(duì)樹(shù)插入操作有用的輕量級(jí)對(duì)象。 |
12 | XmlDocumentType | 表示文檔類型聲明。 |
13 | XmlElement | 表示一個(gè)元素。 |
14 | XmlEntity | 表示一個(gè)實(shí)體聲明,如<!ENTITY ...>。 |
15 | XmlEntityReference | 表示一個(gè)實(shí)體引用節(jié)點(diǎn)。 |
16 | XmlException | 返回有關(guān)最后一個(gè)異常的詳細(xì)信息。 |
17 | XmlImplementation | 定義一組XmlDocument對(duì)象的上下文。 |
18 | XmlLinkedNode | 獲取此節(jié)點(diǎn)之前或之后的節(jié)點(diǎn)。 |
19 | XmlNode | 表示XML文檔中的單個(gè)節(jié)點(diǎn)。 |
20 | XmlNodeList | 表示節(jié)點(diǎn)的有序集合。 |
21 | XmlNodeReader | 表示提供對(duì)XmlNode中的XML數(shù)據(jù)的快速,非緩存轉(zhuǎn)發(fā)訪問(wèn)的閱讀器。 |
22 | XmlNotation | 表示一個(gè)注釋聲明,如<!NOTATION ...>。 |
23 | XmlParserContext | 提供XmlReader解析XML片段所需的所有上下文信息。 |
24 | XmlProcessingInstruction | 表示處理指令,XML定義為在文檔的文本中保留處理器特定的信息。 |
25 | XmlQualifiedName | 表示一個(gè)XML限定名稱。 |
26 | XmlReader | 表示一個(gè)閱讀器,提供了快速,非緩存,只進(jìn)到XML數(shù)據(jù)訪問(wèn)。 |
27 | XmlReaderSettings | 指定一組要在Create方法創(chuàng)建的XmlReader對(duì)象上支持的要素。 |
28 | XmlResolver | 解析由統(tǒng)一資源標(biāo)識(shí)符(URI)命名的外部XML資源。 |
29 | XmlSecureResolver | 有助于通過(guò)封裝XmlResolver對(duì)象并限制底層X(jué)mlResolver有權(quán)訪問(wèn)的資源來(lái)保護(hù)XmlResolver的另一個(gè)實(shí)現(xiàn)。 |
30 | XmlSignificantWhitespace | 表示混合內(nèi)容節(jié)點(diǎn)中的標(biāo)記之間或xml:space ='preserve'范圍內(nèi)的空白空間中的空格。這也稱為有效的空白空間。 |
31 | XmlText | 表示元素或?qū)傩缘奈谋緝?nèi)容。 |
32 | XmlTextReader | 表示提供對(duì)XML數(shù)據(jù)的快速,非緩存,僅轉(zhuǎn)發(fā)訪問(wèn)的閱讀器。 |
33 | XmlTextWriter | 代表作家提供了一個(gè)快速,非緩存,只進(jìn)生成包含符合W3C可擴(kuò)展標(biāo)記語(yǔ)言(XML)1.0和XML中建議的命名空間XML數(shù)據(jù)流或文件的方式。 |
34 | XmlUrlResolver | 解析由統(tǒng)一資源標(biāo)識(shí)符(URI)命名的外部XML資源。 |
35 | XmlWhitespace | 代表元素內(nèi)容中的空白。 |
36 | XmlWriter | 表示提供快速,非緩存,僅轉(zhuǎn)發(fā)方式生成包含XML數(shù)據(jù)的流或文件的寫(xiě)入程序。 |
37 | XmlWriterSettings | 指定一組要在XmlWriter.Create方法創(chuàng)建的XmlWriter對(duì)象上支持的要素。 |
<?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文件中導(dǎo)入System.Xml命名空間。
在表單中添加標(biāo)簽,并將其文字更改為“Movies Galore”。
添加三個(gè)列表框和三個(gè)按鈕,以顯示來(lái)自xml文件的電影的標(biāo)題,類型和描述。
使用代碼編輯器窗口添加以下代碼。
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工具欄上的“開(kāi)始”按鈕執(zhí)行并運(yùn)行上述代碼。 單擊按鈕將顯示文件中電影的標(biāo)題,類型和描述。
XmlWriter類用于將XML數(shù)據(jù)寫(xiě)入流,文件或TextWriter對(duì)象。 它也以只向前,非緩存的方式工作。
讓我們通過(guò)在運(yùn)行時(shí)添加一些數(shù)據(jù)來(lái)創(chuàng)建一個(gè)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工具欄上的“開(kāi)始”按鈕執(zhí)行并運(yùn)行上述代碼。 單擊顯示作者文件將在Web瀏覽器上顯示新創(chuàng)建的authors.xml文件。
根據(jù)文檔對(duì)象模型(DOM),XML文檔由節(jié)點(diǎn)和節(jié)點(diǎn)的屬性組成。 XmlDocument類用于實(shí)現(xiàn).Net框架的XML DOM解析器。 它還允許您通過(guò)插入,刪除或更新文檔中的數(shù)據(jù)來(lái)修改現(xiàn)有的XML文檔。
以下是XmlDocument類的一些常用方法:
SN | 方法名稱和說(shuō)明 |
---|---|
1 | AppendChild 將指定的節(jié)點(diǎn)添加到此節(jié)點(diǎn)的子節(jié)點(diǎn)列表的末尾。 |
2 | CreateAttribute(String) 使用指定的名稱創(chuàng)建XmlAttribute。 |
3 | CreateComment 創(chuàng)建包含指定數(shù)據(jù)的XmlComment。 |
4 | CreateDefaultAttribute 創(chuàng)建具有指定前綴,本地名稱和命名空間URI的默認(rèn)屬性。 |
5 | CreateElement(String) 創(chuàng)建具有指定名稱的元素。 |
6 | CreateNode(String, String, String) 創(chuàng)建具有指定節(jié)點(diǎn)類型,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)建一個(gè)XmlSignificantWhitespace節(jié)點(diǎn)。 |
11 | createTextNode 創(chuàng)建具有指定文本的XMLTEXT。 |
12 | CreateWhitespace 創(chuàng)建一個(gè)XmlWhitespace節(jié)點(diǎn)。 |
13 | CreateXmlDeclaration 創(chuàng)建一個(gè)具有指定值的XmlDeclaration節(jié)點(diǎn)。 |
14 | GetElementById 獲取具有指定ID的XmlElement。 |
15 | GetElementsByTagName(String) 返回一個(gè)包含與指定名稱匹配的所有后代元素的列表的XmlNodeList。 |
16 | GetElementsByTagName(String, String) 返回一個(gè)包含與指定名稱匹配的所有后代元素的列表的XmlNodeList。 |
17 | InsertAfter 在指定的引用節(jié)點(diǎn)之后立即插入指定的節(jié)點(diǎn)。 |
18 | InsertBefore 在指定的引用節(jié)點(diǎn)之前插入指定的節(jié)點(diǎn)。 |
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é)點(diǎn)添加到此節(jié)點(diǎn)的子節(jié)點(diǎn)列表的開(kāi)頭。 |
25 | ReadNode 基于XmlReader中的信息創(chuàng)建XmlNode對(duì)象。讀取器必須位于節(jié)點(diǎn)或?qū)傩陨稀? |
26 | RemoveAll 刪除當(dāng)前節(jié)點(diǎn)的所有子節(jié)點(diǎn)和/或?qū)傩浴? |
27 | RemoveChild 刪除指定的子節(jié)點(diǎn)。 |
28 | ReplaceChild 將子節(jié)點(diǎn)oldChild替換為newChild節(jié)點(diǎn)。 |
29 | Save(Stream) 保存XML文檔到指定的流。 |
30 | Save(String) 將XML文檔保存到指定的文件。 |
31 | Save(TextWriter) 將XML文檔保存到指定的TextWriter。 |
32 | Save(XmlWriter) 將XML文檔保存到指定的XmlWriter。 |
在本示例中,讓我們?cè)趚ml文檔authors.xml中插入一些新節(jié)點(diǎn),然后在列表框中顯示所有作者的名字。
執(zhí)行以下步驟:
將authors.xml文件添加到應(yīng)用程序的bin / Debug文件夾中(如果您已經(jīng)嘗試了最后一個(gè)示例,應(yīng)該在那里)
導(dǎo)入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工具欄上的“開(kāi)始”按鈕執(zhí)行并運(yùn)行上述代碼。 單擊“顯示作者”按鈕將顯示所有作者的名字,包括我們?cè)谶\(yùn)行時(shí)添加的作者。
更多建議: