教你运用DOM解析VB.NET XML文件
创始人
2024-06-10 10:01:00
0

XML文件是安全的,在程序中我们大多数的文件都是XML文件,但是对于用DOM解析XML文件熟练运用的还是很少,如何使用DOM解析VB.NET XML文件呢?在这里就和大家一起看一个案例分析吧!
#T#1、建立字符串写文件,XML是由<>组成,实际上把所有字符形成后再写进文件中即可。但此类方法不适合大数据的操作。
2、XLST,相当与CSS,VB不适合。
3、DOM。
所以介绍的是使用DOM来写VB.NET XML文件。以下范例以SQLSERVER的Northwind中Employee表进行示范。VB.NET XML文件代码如下:

  1. Option Explicit     
  2. Public RsAs New ADODB.Recordset     
  3. Public Conn As New ADODB.Connection     
  4. Public tempDocAs MSXML2.DOMDocument 'xml文件     
  5. Public tempNode As MSXML2.IXMLDOMNode     
  6. Public Root As MSXML2.IXMLDOMElement     
  7. Public tempelement As MSXML2.IXMLDOMElement     
  8. Public tempattribute As MSXML2.IXMLDOMElement     
  9. Public emp As MSXML2.IXMLDOMElement     
  10. Private Sub Command1_Click()     
  11. '生成一个XML DOMDocument对象     
  12. Set tempDoc = New MSXML2.DOMDocument     
  13. '生成根节点并把它设置为文件的根     
  14. Set Root = tempDoc.createElement("employees")     
  15. Set tempDoc.documentElement = Root    
  16. '在节点上添加多个属性     
  17. Call Root.setAttribute("xmlns:xsd", "http://www.w3.org/2001/XMLSchema")     
  18. Call Root.setAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance")     
  19. Call Root.setAttribute("xmlns", "http://www.kingdee.com/ReK3Inventory")     
  20. Do While Not Rs.EOF     
  21. Set emp = tempDoc.createNode(MSXML2.NODE_ELEMENT, "employee", "")     
  22. Root.appendChild emp     
  23. '生成孩子节点添加到根节点上去,并且为这个节点设置一个属性     
  24. Set tempNode = tempDoc.createNode(MSXML2.NODE_ELEMENT, "Employeeid", "")     
  25. tempNode.Text = Rs(0)     
  26. emp.appendChild tempNode     
  27. Set tempNode = tempDoc.createNode(MSXML2.NODE_ELEMENT, "Firstname", "")     
  28. tempNode.Text = Rs(1)     
  29. emp.appendChild tempNode     
  30. Set tempNode = tempDoc.createNode(MSXML2.NODE_ELEMENT, "Title", "")     
  31. tempNode.Text = Rs(2)     
  32. emp.appendChild tempNode     
  33. Rs.MoveNext     
  34. Loop     
  35. Dim pi As IXMLDOMProcessingInstruction     
  36. Set pi = tempDoc.createProcessingInstruction("xml", "version='1.0' encoding='gb2312'")     
  37. Call tempDoc.insertBefore(pi, tempDoc.childNodes(0))     
  38. '直接保存成文件即可     
  39. tempDoc.Save "c:\myTest.xml"     
  40. Unload Me     
  41. End Sub     
  42. Private Sub Form_Load()     
  43. '连接SQLSERVER     
  44. Dim strConn As String     
  45. strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=Northwind;Data Source=LocalHost"    
  46. Conn.CursorLocation = adUseClient    
  47. Conn.Open strConn     
  48. If Rs.State <> adStateClosed Then Rs.Close     
  49. Rs.Open "Select employeeid,Firstname,Title from employees ", Conn, adOpenStatic, adLockOptimistic     
  50. End Sub     
  51. Private Sub Form_Unload(Cancel As Integer)Rs.Close     
  52. Set Rs = Nothing    
  53. Conn.Close     
  54. Set Conn = Nothing    
  55. End Sub    

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...