Як переміщатися XML до XPathNavigator класу за допомогою Visual Basic

Переклади статей Переклади статей
Номер статті: 301111 - Показ продуктів, яких стосується ця стаття.
Для Microsoft Visual C# версія цієї статті Див. 308343.
За версією Microsoft Visual Basic 6.0 цього стаття, перегляньте 271619.
Розгорнути все | Згорнути все

На цій сторінці

ПІДСУМКИ

У цій статті показано, як для навігації Extensible Markup Language (XML) документів з XPathNavigator об'єкт, створений із XPathDocument об'єкт. Цей зразок навантажень об'єкт XPathDocument з XML-даними, створює об'єкт XPathNavigator як подання елементів на дані і відображає XML пішки через документа.

Вимоги

На цьому списку описано рекомендованих устаткування, Підтримка програмного забезпечення, мережі інфраструктура та пакети оновлень, потрібні:
  • Microsoft Windows Server 2003, Microsoft Windows 2000 професійно оформлений, Windows 2000 Server, Windows 2000 Advanced Server або Microsoft Сервер Windows NT 4.0
  • Microsoft Visual Studio 2005 або Microsoft Visual Studio .NET
Це статті передбачається, що ви знайомі з наступні теми:
  • Термінологія XML
  • Створення та читання файлів XML
  • Синтаксис XML шлях мови (XPath)

Як використовувати клас XPathNavigator орієнтуватися XML

  1. Visual Studio 2005 або в Visual Studio. ЧИСТИЙ, створити на 2005 Року Visual Basic або Visual Basic .net консольного застосування.

    Примітка У цьому прикладі використовується файл, що називається Books.xml. Ви можете створити Books.xml файл, або ви можете використовувати зразок, який входить до складу на .Net Підтримка програмного забезпечення розвитку Kit (SDK) Quickstarts. Якщо у вас на Quickstarts встановлено, Books.xml знаходиться в такій папці:
    \Program Files\Microsoft.NET\FrameworkSDK\Samples\Quickstart\Howto\Samples\Xml\Transformxml\VB
    Крім того, Цей файл можна отримати, відвідавши веб-вузлі:
    ASPX http://MSDN.Microsoft.com/EN-US/Library/Windows/Desktop/ms762271 (v=vs.85)

    Потрібно скопіювати до Books.xml на \Bin\Debug папки, що знаходиться під каталог вхідних повідомлень, у якій було створено це проект.
  2. Переконайтеся, що проект посилається System.Xml простір імен.
  3. сценарій виконання заяву імпорту на простори імен Xml і XPath , так що ви не зобов'язані кваліфікації декларацій у ці простори імен пізніше у вашому коді. Ви повинні використовувати імпорту заяву до інших декларації.
    Imports System.Xml
    Imports System.Xml.XPath
    					
  4. Оголосити відповідні змінні. Оголосити об'єкта XPathDocument провести XML-документа і оцінювати вирази XPath, і рухатися через об'єкта XPathNavigator до документ. Оголосити рядок об'єкт, щоб провести виразу XPath. запит на додавання коду декларації в основні процедури в Module1.
    Dim nav As XPathNavigator
    Dim docNav As XPathDocument
    					
  5. Завантажити об'єкт XPathDocument з приклад файлу Books.xml. Клас XPathDocument використовує Extensible Stylesheet мови перетворення (XSLT) Щоб надати швидким і продуктивність орієнтованих кеш обробки XML документів. Він подібний до XML для документа Object Model (DOM), але спеціально оптимізовано для переробки XSLT, XPath модель даних.
    'Open the XML.
    docNav = New XPathDocument("books.xml")
    					
  6. Створення об'єкта XPathNavigator з документа. XPathNavigator дає змогу переміщатися по вузлах атрибутів і на простір імен вузлів у XML-документі.
    'Create a navigator to query with XPath.
    nav = docNav.CreateNavigator
    					
  7. Переміщення кореневий документ з MoveToRoot методом. MoveToRoot встановлює Навігатор до документа вузол, який містить всю дерево вузлів.
    'Initial XPathNavigator to start at the root.
    nav.MoveToRoot()
    					
  8. Використовувати MoveToFirstChild метод для переміщення до дітей XML-документа. MoveToFirstChild метод рухається на першу дитину поточного вузла. У випадку Books.xml джерела, ви є переходом від кореневого документа в регіоні дітей, коментарі розділ і вузол книжковий магазин.
    'Move to the first child node (comment field).
    nav.MoveToFirstChild()
    					
  9. Використовувати MoveToNext метод для перебору вузлів на рівні братом. MoveToNext метод переміщується до наступного брат поточного вузла.
    'Loop through all the root nodes.
    Do
        ...
    Loop While nav.MoveToNext
    					
  10. Переконайтеся, що ви тільки Обробка елемента вузлів, за допомогою властивості NodeType і відображення тексту представництво елемента за допомогою значення властивості.
    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
    					
  11. HasAttributes властивість використовується для визначення, чи вузол має будь-які атрибути. Ти можеш також використовувати інші методи, такі, як MoveToNextAttribute, перейти на атрибут, і перевірити його вартість. Примітка що цього код сегмента лише проведе через нащадки кореневий вузол а не на дерево повністю.
    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
    					
  12. Додати паузу в кінці консолі відображення більш за допомогою методу ReadLine об'єкта консолі легко відобразити вище результатів.
    'Pause.
    Console.ReadLine()
    					
  13. Побудувати і запустити консоль застосування проекту.

Повний код лістингу

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
				

ПОСИЛАННЯ

Для Щоб отримати додаткові відомості, відвідайте наступні веб Microsoft розробників (MSDN) сайти:
XML в .net: .NET Framework XML класи та C# пропонують простий, масштабованих даних маніпуляцій
http://MSDN.Microsoft.com/msdnmag/Issues/01/01/XML

XPathNavigator клас
http://MSDN.Microsoft.com/EN-US/Library/System.XML.XPath.xpathnavigator.aspx

XPathDocument клас
http://MSDN.Microsoft.com/EN-US/Library/System.XML.XPath.xpathdocument.aspx

XSLT-перетворення з класом XslTransform
http://MSDN.Microsoft.com/EN-US/Library/System.XML.XSL.xsltransform.aspx

Приклади XPath
http://MSDN.Microsoft.com/EN-US/Library/ms256086.aspx
Для Щоб отримати додаткові відомості, відвідайте такий веб-сайт Консорціуму Інтернет (W3C):
XML-мова шлях (XPath)
Версія 1.0: Рекомендації W3C 16 листопада 1999
http://www.w3.org/TR/1999/Rec-XPath-19991116

Властивості

Номер статті: 301111 - Востаннє переглянуто: 5 липня 2012 р. - Редакція: 1.0
ЗАСТОСОВУЄТЬСЯ ДО:
  • 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 KbMtuk
Машинний переклад
УВАГА! Цю статтю переклала програма машинного перекладу Microsoft, а не людина. Корпорація Microsoft пропонує вам як машинні переклади, так і переклади фахівців, щоб Ви мали доступ до всіх статей бази знань рідною мовою. Проте стаття, яку переклав комп’ютер, не завжди бездоганна. Вона може містити лексичні, синтаксичні або граматичні помилки. Так само помиляється іноземець, спілкуючись вашою рідною мовою. Корпорація Microsoft не несе відповідальність за жодні неточності, помилки або шкоду, завдану неправильним перекладом змісту або його використанням з боку користувачів. Крім того, корпорація Microsoft часто оновлює програму машинного перекладу.
Клацніть тут, щоб переглянути цю статтю англійською мовою: 301111

Надіслати відгук

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com