V tomto krokovom ilustruje, ako prechádzať
Extensible Markup Language (XML) dokumenty s objektom
XPathNavigator , ktorý je vytvorený z objektu
XPathDocument . Táto vzorka načíta objekt
XPathDocument s údajmi XML, vytvorí objekt
XPathNavigator ako výhľadom na údaje a zobrazí XML chôdza
v dokumente.
Požiadavky
The
Nasledujúci zoznam uvádza odporúčané hardware, software, siete
infraštruktúry, a balíky service pack, ktoré potrebujete:
- Microsoft Windows Server 2003, Microsoft Windows 2000
Profesionálne, Windows 2000 Server, Windows 2000 Advanced Server alebo Microsoft
Windows NT 4.0 Server
- Microsoft Visual Studio 2005 alebo Microsoft Visual Studio
.NET
To
Článok predpokladá, že ste oboznámení s v nasledovných témach:
- Terminológia XML
- Vytváranie a čítanie súborov XML
- Syntax XML Path jazyk (XPath)
Ako používať XPathNavigator triedy navigovať XML
- Program Visual Studio 2005 alebo Visual Studio. ČISTÁ, vytvorenie
2005 Visual Basic alebo Visual Basic .net konzolovú aplikáciu.
Poznámka V tomto príklade sa používa súbor s názvom Books.xml. Môžete vytvoriť
vlastný súbor Books.xml alebo použiť vzorky, ktorá je súčasťou
.Net software Development Kit (SDK) Quickstarts. Ak máte Quickstarts
nainštalovaný, Books.xml je umiestnený v nasledujúcom priečinku: \Program Files\Microsoft.NET\FrameworkSDK\Samples\Quickstart\Howto\Samples\Xml\Transformxml\VB
Alternatívne,
Tento súbor môžete získať tak, že navštívite nasledovnú webovú lokalitu:
Musíte skopírovať Books.xml na
\Bin\Debug priečinok, ktorý sa nachádza v priečinku, v ktorom ste vytvorili to
projekt. - Uistite sa, že projekt odkazy System.Xml priestor názvov.
- Použite príkaz dovozov na Xml a XPath priestory názvov, tak, že nie sú potrebné získať vyhlásenia
v tie priestory názvov v kóde neskôr. Musíte použiť dovozy vyhlásenie pred všetkými ostatnými deklaráciami.
Imports System.Xml
Imports System.Xml.XPath
- Vyhlásiť vhodné ukazovatele. Vyhlásiť objekt XPathDocument držať XML dokument a objekt XPathNavigator zhodnotiť Výrazy XPath a posúvanie
dokument. Vyhlásiť reťazec objektu držať výrazu XPath. Pridajte kód vyhlásenie v
hlavnej procedúry v Module1.
Dim nav As XPathNavigator
Dim docNav As XPathDocument
- Načítať objekt XPathDocument s vzorový súbor Books.xml. Trieda XPathDocument používa jazyk Extensible Stylesheet Language Transformations (XSLT)
poskytovať rýchle a výkon-orientované vyrovnávacej pamäte pre spracovanie dokumentu XML.
To je podobné na XML Document Object Model (DOM), ale je vysoko optimalizované
na spracovanie XSLT a XPath údajového modelu.
'Open the XML.
docNav = New XPathDocument("books.xml")
- Vytvorenie XPathNavigator objektu z dokumentu. XPathNavigator umožňuje prechádzať atribúty uzly a
priestor názvov uzly dokumentu XML.
'Create a navigator to query with XPath.
nav = docNav.CreateNavigator
- Presunúť do hlavného dokumentu MoveToRoot metódou. MoveToRoot nastaví Navigátor uzol dokumentu, ktorý obsahuje celý
strom uzlov.
'Initial XPathNavigator to start at the root.
nav.MoveToRoot()
- Použite metódu MoveToFirstChild presunúť na deti dokumentu XML. Metóda MoveToFirstChild sa presunie prvé dieťa aktuálny uzol. V prípade
Books.xml zdroja, ste prechádzajú od hlavného dokumentu do
deti, komentár sekcii a kníhkupectvá uzol.
'Move to the first child node (comment field).
nav.MoveToFirstChild()
- Použite metódu MoveToNext Iterácia súboru prostredníctvom uzly na úrovni súrodenec. Metóda MoveToNext sa presunie na ďalší súrodenec aktuálny uzol.
'Loop through all the root nodes.
Do
...
Loop While nav.MoveToNext
- Použite vlastnosť NodeType presvedčiť sa, že sú len spracovanie prvok uzlov,
a použiť vlastnosť hodnota zobraziť textovú reprezentáciu prvku.
Do
'Find the first element.
If nav.NodeType = XPathNodeType.Element Then
'If children exist.
If nav.HasChildren Then
'Move to the first child.
nav.MoveToFirstChild()
'Loop through all the children.
Do
'Display the data.
Console.Write("The XML string for this child ")
Console.WriteLine("is '{0}'", nav.Value)
Loop While nav.MoveToNext
End If
End If
Loop While nav.MoveToNext
- Na určenie, či uzol má nejaké atribúty, použite vlastnosť HasAttributes . môžeš
tiež používať iné metódy, ako sú MoveToNextAttribute, presťahovať do atribút a kontrolovať jeho hodnoty. Poznámka to
Kódový segment len prechádzke descendents Koreňový uzol a nie
celý strom.
Do
'Find the first element.
If nav.NodeType = XPathNodeType.Element Then
'if children exist
If nav.HasChildren Then
'Move to the first child.
nav.MoveToFirstChild()
'Loop through all the children.
Do
'Display the data.
Console.Write("The XML string for this child ")
Console.WriteLine("is '{0}'", nav.Value)
'Check for attributes.
If nav.HasAttributes Then
Console.WriteLine("This node has attributes")
End If
Loop While nav.MoveToNext
End If
End If
Loop While nav.MoveToNext
- Použite metódu ReadLine objekt konzoly pridať pauzu na konci zobrazenia konzoly viac
ľahko zobraziť vyššie výsledky.
'Pause.
Console.ReadLine()
- Výstavbe a vaše konzoly aplikácií project.
Úplný kód výpis
Imports System.Xml
Imports System.Xml.XPath
Module Module1
Sub Main()
Dim nav As XPathNavigator
Dim docNav As XPathDocument
docNav = New XPathDocument("books.xml")
nav = docNav.CreateNavigator
nav.MoveToRoot()
'Move to the first child node (comment field).
nav.MoveToFirstChild()
Do
'Find the first element.
If nav.NodeType = XPathNodeType.Element Then
'if children exist
If nav.HasChildren Then
'Move to the first child.
nav.MoveToFirstChild()
'Loop through all the children.
Do
'Display the data.
Console.Write("The XML string for this child ")
Console.WriteLine("is '{0}'", nav.Value)
'Check for attributes.
If nav.HasAttributes Then
Console.WriteLine("This node has attributes")
End If
Loop While nav.MoveToNext
End If
End If
Loop While nav.MoveToNext
'Pause.
Console.ReadLine()
End Sub
End Module
Pre
Ďalšie informácie, navštívte nasledujúce webové webová lokalita Microsoft Developer Network (MSDN)
stránky:
Pre
Ďalšie informácie nájdete na nasledujúcej webovej lokalite World Wide Web Consortium (W3C):
ID článku: 301111 - Posledná kontrola: 5. júla 2012 - Revízia: 3.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
- Microsoft Visual Basic 2005
- Microsoft Visual Basic .NET 2003 Standard Edition
- Microsoft Visual Basic .NET 2002 Standard Edition
| kbvs2005applies kbvs2005swept kbdownload kbsample kbhowtomaster kbmt KB301111 KbMtsk |
Strojovo preloženéDÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:
301111
(http://support.microsoft.com/kb/301111/en-us/
)