XmlReader.Skip Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Melompati anak-anak dari simpul saat ini.
public:
virtual void Skip();
public virtual void Skip();
abstract member Skip : unit -> unit
override this.Skip : unit -> unit
Public Overridable Sub Skip ()
Pengecualian
Metode XmlReader dipanggil sebelum operasi asinkron sebelumnya selesai. Dalam hal ini, InvalidOperationException dilemparkan dengan pesan "Operasi asinkron sudah berlangsung."
Contoh
Contoh berikut mengurai file XML yang dimulai pada simpul buku kedua.
using (XmlReader reader = XmlReader.Create("2books.xml")) {
// Move the reader to the second book node.
reader.MoveToContent();
reader.ReadToDescendant("book");
reader.Skip(); //Skip the first book.
// Parse the file starting with the second book node.
do {
switch (reader.NodeType) {
case XmlNodeType.Element:
Console.Write("<{0}", reader.Name);
while (reader.MoveToNextAttribute()) {
Console.Write(" {0}='{1}'", reader.Name, reader.Value);
}
Console.Write(">");
break;
case XmlNodeType.Text:
Console.Write(reader.Value);
break;
case XmlNodeType.EndElement:
Console.Write("</{0}>", reader.Name);
break;
}
} while (reader.Read());
}
Using reader As XmlReader = XmlReader.Create("2books.xml")
' Move the reader to the second book node.
reader.MoveToContent()
reader.ReadToDescendant("book")
reader.Skip() 'Skip the first book.
' Parse the file starting with the second book node.
Do
Select Case reader.NodeType
Case XmlNodeType.Element
Console.Write("<{0}", reader.Name)
While reader.MoveToNextAttribute()
Console.Write(" {0}='{1}'", reader.Name, reader.Value)
End While
Console.Write(">")
Case XmlNodeType.Text
Console.Write(reader.Value)
Case XmlNodeType.EndElement
Console.Write("</{0}>", reader.Name)
End Select
Loop While reader.Read()
End Using
Contohnya menggunakan file, 2books.xml, sebagai input.
<!--sample XML fragment-->
<bookstore>
<book genre='novel' ISBN='10-861003-324'>
<title>The Handmaid's Tale</title>
<price>19.95</price>
</book>
<book genre='novel' ISBN='1-861001-57-5'>
<title>Pride And Prejudice</title>
<price>24.95</price>
</book>
</bookstore>
Keterangan
Dalam input XML berikut jika pembaca diposisikan pada <a> simpul atau atributnya, memanggil Skip posisi pembaca ke simpul <b> .
Jika pembaca diposisikan pada simpul daun sudah (seperti <x> simpul atau node abcteks ), panggilan Skip sama dengan memanggil Read.
<a name="bob" age="123">
<x/>abc<y/>
</a>
<b>
...
</b>
Metode ini memeriksa XML yang terbentuk dengan baik.
Jika pembaca adalah XmlValidatingReader, metode ini juga memvalidasi konten yang dilewati.
Implementasi XmlReader menentukan apakah metode akan Skip memperluas entitas eksternal atau tidak. Tabel berikut ini menjelaskan apakah entitas eksternal diperluas untuk berbagai jenis XmlReader objek.
| Jenis XmlReader | Memperluas entitas eksternal |
|---|---|
| XmlTextReader | No. |
| XmlReader instans yang dibuat oleh Create metode yang membaca data teks. | No. |
| XmlReader instans yang dibuat oleh Create metode yang membaca data biner. | Tidak dapat diterapkan. |
| Instans validasi XmlReader skema yang dibuat oleh Create metode . | Yes. |
| XmlValidatingReader | Yes. |
| XmlReader instans yang dikembalikan oleh XPathNavigator objek. | Tidak dapat diterapkan. |
| XmlNodeReader | No. |
| XmlReader instans dibungkus di sekitar instans lain XmlReader . | Tergantung pada implementasi yang mendasar XmlReader. (Metode Skip pada yang mendasar XmlReader dipanggil). |
Untuk versi asinkron dari metode ini, lihat SkipAsync.