منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : معلومة ::: Read From Xml File
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
كاتب الموضوع : BADRMEDIA

عندك ملف Xml وتريد القراءة منه

إذن سنستخدم القارئ XmlReader


لنري هذا المثال :


================================================== =

أنشأ على القرص المحلي C ملف Xml باسم VB4ARAB.Xml


اكتب فى محتواه



كود :
[color=#000080]<?xml version=[COLOR=#0000ff]"1.0"[/color] encoding=[color=#0000ff]"utf-8"[/color]?>[/COLOR]
[i][color=#000080]<!--BADRMEDIA-->[/color][/i]
[color=#000080]<Address_Lists>[/color]
[color=#000080]<AddressList ID=[COLOR=#0000ff]"111"[/color]>[/COLOR]
[color=#000080]<ZIP_CODE>[/color]123-4567[color=#000080]</ZIP_CODE>[/color]
[color=#000080]<ADDRESS>[/color]BADRMEDIA[color=#000080]</ADDRESS>[/color]
[color=#000080]</AddressList>[/color]
[color=#000080]<AddressList ID=[COLOR=#0000ff]"222"[/color]>[/COLOR]
[color=#000080]<ZIP_CODE>[/color]333-7777[color=#000080]</ZIP_CODE>[/color]
[color=#000080]<ADDRESS>[/color]BADRMEDIA[color=#000080]</ADDRESS>[/color]
[color=#000080]</AddressList>[/color]
[color=#000080]<AddressList ID=[COLOR=#0000ff]"333"[/color]>[/COLOR]
[color=#000080]<ZIP_CODE>[/color]111-2222[color=#000080]</ZIP_CODE>[/color]
[color=#000080]<ADDRESS>[/color]BADRMEDIA[color=#000080]</ADDRESS>[/color]
[color=#000080]</AddressList>[/color]
[color=#000080]</Address_Lists>[/color]

لتجعل وجود فراغ فى صفحة Xml لأول سطر


أضف زر أمر Button واضف له هذا الكود



كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Try
Dim reader As System.Xml.XmlReader = System.Xml.XmlReader.Create("C:\VB4ARAB.xml")
While reader.Read
If reader.NodeType = Xml.XmlNodeType.Element Then
' نظهر اسم العنصر
MsgBox(reader.LocalName)
End If
End While
' نغلق الاتصال
reader.Close()
Catch ex As Exception
MsgBox("" & ex.Message & "", MsgBoxStyle.Exclamation + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.MsgBoxRight, "BADRMEDIA SoftWare ")
End Try

End Sub


أعتقد الكود واضح وما يحتاج لشرح
فى الكود السابق ماذا لو أردت قراءة عنصر محدد


طبعاً نحن نضع جملة شرطية للقراءة



كود :
If reader.NodeType = Xml.XmlNodeType.Element Then

كل ما فى الأمر أنك ستزيد الشرط

مثلاً قراءة أى حقل لعنصر ZIP_CODE


كود :
If reader.NodeType = Xml.XmlNodeType.Element And reader.LocalName = "ZIP_CODE" Then
هناك شئ فى الكود السابق

أنت تريد أن تقرأ النص فى الحقل وهذا الكود لا يحقق ذلك


كود :
MsgBox(reader.LocalName
)

فبدلاً من LocalName استخدم الخاصية ReadString



كود :
MsgBox(reader.ReadString)
حاول تتعرف على الخصائص للعنصر XmlReader أكثر وتطبيق ذلك

إن شاء الله راح نشرح كيفية التعامل مع العنصر XmlWriter أيضاً