@@ -4,14 +4,14 @@ Imports System.Xml
44
55
66Class XmlReader_Samples
7-
8-
9- Shared Sub Main()
10-
7+
8+
9+ Shared Sub Main()
10+
1111 End Sub
12-
13-
14- Shared Sub AttributeCount()
12+
13+
14+ Shared Sub AttributeCount()
1515Dim reader As XmlReader = XmlReader.Create( "books.xml" )
1616reader.ReadToDescendant( "book" )
1717'<snippet1>
@@ -23,35 +23,35 @@ If reader.HasAttributes Then
2323 Console.WriteLine( " {0}" , reader(i))
2424 Next i
2525 ' Move the reader back to the element node.
26- reader.MoveToElement()
26+ reader.MoveToElement()
2727End If
28- '</snippet1>
28+ '</snippet1>
2929End Sub
30-
30+
3131'==============================
32- '
33- Shared Sub GetAttribute1()
32+ '
33+ Shared Sub GetAttribute1()
3434Dim reader As XmlReader = XmlReader.Create( "books.xml" )
3535'<snippet2>
3636reader.ReadToFollowing( "book" )
3737Dim isbn As String = reader.GetAttribute( 2 )
3838 '</snippet2>
3939End Sub
40-
40+
4141'==============================//
42- '
43- Shared Sub GetAttribute2()
42+ '
43+ Shared Sub GetAttribute2()
4444Dim reader As XmlReader = XmlReader.Create( "books.xml" )
4545'<snippet3>
4646reader.ReadToFollowing( "book" )
4747Dim isbn As String = reader.GetAttribute( "ISBN" )
4848Console.WriteLine( "The ISBN value: " + isbn)
49- '</snippet3>
49+ '</snippet3>
5050End Sub
51-
51+
5252'==============================//
53- '
54- Shared Sub MoveToAttribute1()
53+ '
54+ Shared Sub MoveToAttribute1()
5555Dim reader As XmlReader = XmlReader.Create( "books.xml" )
5656reader.ReadToFollowing( "book" )
5757'<snippet4>
@@ -64,24 +64,24 @@ If reader.HasAttributes Then
6464 Next i
6565 reader.MoveToElement() 'Moves the reader back to the element node.
6666End If
67- '</snippet4>
67+ '</snippet4>
6868End Sub
69-
69+
7070'==============================//
71- '
72- Shared Sub MoveToFirstAttribute()
71+ '
72+ Shared Sub MoveToFirstAttribute()
7373Dim reader As XmlReader = XmlReader.Create( "books.xml" )
7474'<snippet5>
7575reader.ReadToFollowing( "book" )
7676reader.MoveToFirstAttribute()
7777Dim genre As String = reader.Value
7878Console.WriteLine( "The genre value: " + genre)
79- '</snippet5>
79+ '</snippet5>
8080End Sub
81-
81+
8282'==============================//
83- '
84- Shared Sub MoveToNextAttribute()
83+ '
84+ Shared Sub MoveToNextAttribute()
8585Dim reader As XmlReader = XmlReader.Create( "books.xml" )
8686reader.ReadToFollowing( "book" )
8787'<snippet6>
@@ -93,25 +93,25 @@ If reader.HasAttributes Then
9393 ' Move the reader back to the element node.
9494 reader.MoveToElement()
9595End If
96- '</snippet6>
96+ '</snippet6>
9797End Sub
98-
99-
98+
99+
100100'==============================//
101- '
102- Shared Sub Item()
101+ '
102+ Shared Sub Item()
103103Dim reader As XmlReader = XmlReader.Create( "books.xml" )
104104'<snippet7>
105105reader.ReadToDescendant( "book" )
106106Dim isbn As String = reader( "ISBN" )
107107Console.WriteLine( "The ISBN value: " + isbn)
108- '</snippet7>
108+ '</snippet7>
109109End Sub
110-
111-
110+
111+
112112'==============================//
113- '
114- Shared Sub Node_Value()
113+ '
114+ Shared Sub Node_Value()
115115'<snippet8>
116116Dim settings As New XmlReaderSettings()
117117settings.DtdProcessing = DtdProcessing.Parse
@@ -141,17 +141,24 @@ While reader.Read()
141141 Console.Write( "</{0}>" , reader.Name)
142142 End Select
143143End While
144- '</snippet8>
144+
145+ ' The example displays the following output:
146+ '
147+ ' <Item>Test with an entity: 123</Item><Item>Test with a child element <more> stuff</Item>
148+ ' <Item>Test with a CDATA section <![CDATA[<456>]]> def</Item><Item>Test with a char entity: A</Item>
149+ ' <!-- Fourteen chars in this element.--><Item>1234567890ABCD</Item></Items>
150+
151+ '</snippet8>
145152End Sub
146-
147-
153+
154+
148155'==============================//
149- '
150- Shared Sub NamespaceURI()
156+ '
157+ Shared Sub NamespaceURI()
151158'<snippet9>
152159Dim reader As XmlReader = XmlReader.Create( "book2.xml" )
153-
154- ' Parse the file. If they exist, display the prefix and
160+
161+ ' Parse the file. If they exist, display the prefix and
155162' namespace URI of each node.
156163While reader.Read()
157164 If reader.IsStartElement() Then
@@ -164,13 +171,13 @@ While reader.Read()
164171 End If
165172End While
166173reader.Close()
167- '</snippet9>
174+ '</snippet9>
168175End Sub
169-
170-
176+
177+
171178'==============================
172- '
173- Shared Sub IsStartElement()
179+ '
180+ Shared Sub IsStartElement()
174181Dim reader As XmlReader = XmlReader.Create( "elems.xml" )
175182'<snippet10>
176183While reader.Read()
@@ -187,16 +194,16 @@ While reader.Read()
187194 End If
188195 End If
189196End While
190- '</snippet10>
197+ '</snippet10>
191198End Sub
192-
193-
199+
200+
194201'==============================
195- '
196- Shared Sub ReadEndElement()
202+ '
203+ Shared Sub ReadEndElement()
197204'<snippet11>
198- Using reader As XmlReader = XmlReader.Create( "book3.xml" )
199- ' Parse the XML document. ReadString is used to
205+ Using reader As XmlReader = XmlReader.Create( "book3.xml" )
206+ ' Parse the XML document. ReadString is used to
200207 ' read the text content of the elements.
201208 reader.Read()
202209 reader.ReadStartElement( "book" )
@@ -208,14 +215,14 @@ Using reader As XmlReader = XmlReader.Create("book3.xml")
208215 Console.Write( "The content of the price element: " )
209216 Console.WriteLine(reader.ReadString())
210217 reader.ReadEndElement()
211- reader.ReadEndElement()
218+ reader.ReadEndElement()
212219End Using
213- '</snippet11>
220+ '</snippet11>
214221End Sub
215-
222+
216223'==============================
217- '
218- Shared Sub ReadInnerXml()
224+ '
225+ Shared Sub ReadInnerXml()
219226'<snippet12>
220227' Load the file and ignore all white space.
221228Dim settings As New XmlReaderSettings()
@@ -224,28 +231,28 @@ Using reader As XmlReader = XmlReader.Create("2books.xml")
224231
225232 ' Moves the reader to the root element.
226233 reader.MoveToContent()
227-
234+
228235 ' Moves to book node.
229236 reader.Read()
230-
237+
231238 ' Note that ReadInnerXml only returns the markup of the node's children
232239 ' so the book's attributes are not returned.
233240 Console.WriteLine( "Read the first book using ReadInnerXml..." )
234241 Console.WriteLine(reader.ReadInnerXml())
235-
242+
236243 ' ReadOuterXml returns the markup for the current node and its children
237244 ' so the book's attributes are also returned.
238245 Console.WriteLine( "Read the second book using ReadOuterXml..." )
239246 Console.WriteLine(reader.ReadOuterXml())
240247
241248End Using
242- '</snippet12>
249+ '</snippet12>
243250End Sub
244-
245-
251+
252+
246253'==============================
247- '
248- Shared Sub ReadSubtree()
254+ '
255+ Shared Sub ReadSubtree()
249256'<snippet13>
250257Dim settings As New XmlReaderSettings()
251258settings.IgnoreWhitespace = True
@@ -254,26 +261,26 @@ Using reader As XmlReader = XmlReader.Create("books.xml", settings)
254261 ' Position the reader on the second book node.
255262 reader.ReadToFollowing( "Book" )
256263 reader.Skip()
257-
264+
258265 ' Create another reader that contains just the second book node.
259266 Dim inner As XmlReader = reader.ReadSubtree()
260-
267+
261268 inner.ReadToDescendant( "Title" )
262269 Console.WriteLine(inner.Name)
263270
264- ' Do additional processing on the inner reader. After you
265- ' are done, call Close on the inner reader and
271+ ' Do additional processing on the inner reader. After you
272+ ' are done, call Close on the inner reader and
266273 ' continue processing using the original reader.
267274 inner.Close()
268275
269276End Using
270- '</snippet13>
277+ '</snippet13>
271278End Sub
272-
273-
279+
280+
274281'==============================
275- '
276- Shared Sub ReadtoDescendant()
282+ '
283+ Shared Sub ReadtoDescendant()
277284'<snippet14>
278285Using reader As XmlReader = XmlReader.Create( "2books.xml" )
279286
@@ -298,27 +305,27 @@ Using reader As XmlReader = XmlReader.Create("2books.xml")
298305 Loop While reader.Read()
299306
300307End Using
301- '</snippet14>
308+ '</snippet14>
302309End Sub
303-
304-
310+
311+
305312'==============================
306- '
307- Shared Sub ReadToFollowing()
313+ '
314+ Shared Sub ReadToFollowing()
308315'<snippet15>
309316Using reader As XmlReader = XmlReader.Create( "books.xml" )
310317 reader.ReadToFollowing( "book" )
311318 Do
312319 Console.WriteLine( "ISBN: {0}" , reader.GetAttribute( "ISBN" ))
313320 Loop While reader.ReadToNextSibling( "book" )
314321End Using
315- '</snippet15>
322+ '</snippet15>
316323End Sub
317-
318-
324+
325+
319326'==============================
320- '
321- Shared Sub HasValue()
327+ '
328+ Shared Sub HasValue()
322329'<snippet16>
323330Dim settings As New XmlReaderSettings()
324331settings.IgnoreWhitespace = True
@@ -332,12 +339,12 @@ Using reader As XmlReader = XmlReader.Create("book1.xml", settings)
332339 End If
333340 End While
334341End Using
335- '</snippet16>
342+ '</snippet16>
336343End Sub
337344
338345'==============================
339- '
340- Shared Sub IsStartElement_2()
346+ '
347+ Shared Sub IsStartElement_2()
341348Using reader As XmlReader = XmlReader.Create( "books.xml" )
342349'<snippet17>
343350 ' Parse the file and display each price node.
@@ -346,8 +353,8 @@ Using reader As XmlReader = XmlReader.Create("books.xml")
346353 Console.WriteLine(reader.ReadInnerXml())
347354 End If
348355 End While
349- '</snippet17>
350- End Using
356+ '</snippet17>
357+ End Using
351358End Sub
352359
353360End Class
0 commit comments