Bagaimana menavigasi XML dengan kelas XPathNavigator dengan menggunakan Visual Basic

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 301111 - Melihat produk di mana artikel ini berlaku.
Microsoft Visual C# versi dari artikel ini, Lihat 308343.
Untuk versi Microsoft Visual Basic 6.0 ini Pasal, lihat 271619.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Artikel ini menggambarkan cara untuk menavigasi Extensible Markup Language (XML) kumpulan dokumen dengan objek XPathNavigator yang dibuat dari objek XPathDocument . Sampel ini memuat sebuah objek XPathDocument dengan XML data, menciptakan objek XPathNavigator sebagai tampilan ke data dan menampilkan XML dengan berjalan melalui kumpulan dokumen.

Persyaratan

The Daftar berikut menguraikan fitur peranti penangkap keras, peranti penangkap lunak, jaringan infrastruktur, dan Service Pack yang Anda butuhkan:
  • Microsoft Windows Server 2003, Microsoft Windows 2000 Profesional, Windows 2000 Server, Windows 2000 Advanced Server, atau Microsoft Windows NT 4.0 Server
  • Microsoft Visual Studio 2005 atau Microsoft Visual Studio .NET
Ini Artikel ini mengasumsikan bahwa Anda sudah familiar dengan topik-topik berikut:
  • XML terminologi
  • Membuat dan membaca file XML
  • Sintaks XML jalan bahasa (XPath)

Cara menggunakan XPathNavigator kelas untuk menavigasi XML

  1. Dalam Visual Studio 2005 atau dalam Visual Studio. NET, membuat Visual Basic 2005 atau Visual Basic .net Console Application.

    Catatan Contoh ini menggunakan file yang bernama Books.xml. Anda dapat membuat file Books.xml Anda sendiri, atau Anda dapat menggunakan sampel yang disertakan dengan .Net software Development Kit (SDK) Quickstarts. Jika Anda memiliki Quickstarts diinstal, Books.xml terletak di map berikut:
    \Program Files\Microsoft.NET\FrameworkSDK\Samples\Quickstart\Howto\Samples\Xml\Transformxml\VB
    Atau, Anda bisa mendapatkan file ini dengan mengunjungi situs web berikut:
    .aspx http://MSDN.Microsoft.com/en-us/library/Windows/Desktop/ms762271 (v=vs.85)

    Anda harus menyalin Books.xml untuk \Bin\Debug folder yang terletak di bawah folder yang Anda buat ini proyek.
  2. Pastikan bahwa proyek referensi System.Xml namespace.
  3. Menggunakan impor pernyataan pada Xml dan XPath namespaces sehingga Anda tidak diwajibkan untuk memenuhi syarat Deklarasi dalam namespaces tersebut kemudian dalam kode Anda. Anda harus menggunakan pernyataan impor sebelum deklarasi lain.
    Imports System.Xml
    Imports System.Xml.XPath
    					
  4. Menyatakan variabel sesuai. Menyatakan objek XPathDocument untuk memegang kumpulan dokumen XML dan objek XPathNavigator untuk mengevaluasi XPath ekspresi dan bergerak melalui kumpulan dokumen. Menyatakan objek String untuk memegang ekspresi XPath. Menambahkan kode Deklarasi prosedur utama di Module1.
    Dim nav As XPathNavigator
    Dim docNav As XPathDocument
    					
  5. Memuat objek XPathDocument dengan sampel file Books.xml. Kelas XPathDocument menggunakan Bahasa Lembar Gaya yang Terluaskan transformasi (XSLT) untuk menyediakan cepat dan berorientasi pada kinerja cache untuk pemrosesan kumpulan dokumen XML. Ini sama untuk XML Model Obyek kumpulan dokumen (DOM) (DOM) tetapi sangat dioptimalkan untuk pengolahan XSLT dan XPath data model.
    'Open the XML.
    docNav = New XPathDocument("books.xml")
    					
  6. Membuat objek XPathNavigator dari kumpulan dokumen. XPathNavigator memungkinkan Anda untuk bergerak melalui kedua node atribut dan namespace simpul dalam kumpulan dokumen XML.
    'Create a navigator to query with XPath.
    nav = docNav.CreateNavigator
    					
  7. Pindah ke akar kumpulan dokumen dengan metode MoveToRoot . MoveToRoot set navigator ke node kumpulan dokumen yang berisi seluruh pohon dari simpul.
    'Initial XPathNavigator to start at the root.
    nav.MoveToRoot()
    					
  8. Menggunakan metode MoveToFirstChild untuk pindah ke anak-anak kumpulan dokumen XML. Metode MoveToFirstChild bergerak ke anak pertama dari simpul saat ini. Dalam kasus sumber Books.xml bergerak jauh dari akar kumpulan dokumen ke anak-anak, bagian komentar, dan simpul toko buku.
    'Move to the first child node (comment field).
    nav.MoveToFirstChild()
    					
  9. Menggunakan metode MoveToNext untuk iterate melalui node di tingkat saudara kandung. Metode MoveToNext bergerak untuk saudara selanjutnya node saat ini.
    'Loop through all the root nodes.
    Do
        ...
    Loop While nav.MoveToNext
    					
  10. Menggunakan properti NodeType untuk memastikan bahwa Anda hanya pengolahan elemen node, dan menggunakan nilai properti untuk menampilkan teks representasi dari elemen.
    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. Menggunakan properti HasAttributes untuk menentukan apakah sebuah simpul memiliki atribut apa pun. Kamu bisa juga menggunakan metode lain, seperti MoveToNextAttribute, untuk pindah ke atribut dan memeriksa nilai. Catatan bahwa ini segmen kode hanya berjalan melalui keturunan dari simpul akar dan tidak seluruh pohon.
    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. Menggunakan metode ReadLine objek konsol untuk menambahkan jeda pada akhir layar konsol untuk lebih mudah menampilkan hasil di atas.
    'Pause.
    Console.ReadLine()
    					
  13. Membangun dan menjalankan proyek aplikasi konsol Anda.

Daftar kode lengkap

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
				

REFERENSI

Untuk informasi lebih lanjut, kunjungi Website Microsoft Developer Network (MSDN) berikut situs:
XML di .net: .NET Framework XML kelas dan C# menawarkan manipulasi data sederhana, scalable
http://MSDN.Microsoft.com/msdnmag/Issues/01/01/XML

XPathNavigator kelas
http://MSDN.Microsoft.com/en-us/library/System.xml.XPath.xpathnavigator.aspx

XPathDocument kelas
http://MSDN.Microsoft.com/en-us/library/System.xml.XPath.xpathdocument.aspx

XSLT transformasi dengan kelas XslTransform
http://MSDN.Microsoft.com/en-us/library/System.xml.XSL.xsltransform.aspx

XPath contoh
http://MSDN.Microsoft.com/en-us/library/ms256086.aspx
Untuk informasi lebih lanjut, kunjungi situs web Waring Wera Wanua Consortium (W3C) berikut:
Bahasa garis jatuh berseri XML (XPath)
Versi 1.0: Rekomendasi W3C 16 November 1999
http://www.w3.org/tr/1999/Rec-XPath-19991116

Properti

ID Artikel: 301111 - Kajian Terakhir: 05 Juli 2012 - Revisi: 3.0
Berlaku bagi:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Kata kunci: 
kbvs2005applies kbvs2005swept kbdownload kbsample kbhowtomaster kbmt KB301111 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini: 301111

Berikan Masukan

 

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