| VB读写XML文档
					当前位置:点晴教程→知识管理交流
					
					→『 技术文档交流 』
					
				 
    在VB中我们可以使用XML解释器来对XML文件进行各种操作.XML解释器被封装在一个名字叫做msxml.dll的动态连接库文件中,它是一个COM对象.因此所有可以兼容ActiveX的环境中都可以使用该方法操作XML文档. 我们用一个实例来说明. 首先,我们建立一个名字为test.xml的xml文件.内容如下: <作者信息> <网名>古铁神刀</网名> <性别>男</性别> <手机>13584517846</手机> <电话>0531-82296272</电话> <QQ>362880403</QQ> <个人主页>http://www.xyxtl.cn</个人主页> </作者信息>     新建一个标准EXE工程。选择"工程" - "引用",选取"Microsoft XML V2.0"或更高版本.这样我们就可以使用xml解释器了. 接下来在form中添加控件. 切换到代码视图,添加如下代码: Option Explicit Private p_AppPath As String          '当前目录路径 Private Sub Form_Load()   '得到当前目录   p_AppPath = App.Path   If Right(p_AppPath, 1) <> "/" And Right(p_AppPath, 1) <> "" Then      p_AppPath = p_AppPath & "/"   End If End Sub 分别双击载入、保存、退出系统,添加代码: Private Sub cmdLoad_Click()     '载入文件内容     loadValues End Sub Private Sub cmdSave_Click()     '保存当前内容     saveValues End Sub Private Sub cmdQuit_Click()   Unload Me End Sub 现在我们编写过程实现文件的读入和写出: Private Sub loadValues() 
   Dim xml_document As DOMDocument   Dim values_node As IXMLDOMNode   '载入文件   Set xml_document = New DOMDocument   MsgBox p_AppPath & "test.xml"   xml_document.Load p_AppPath & "test.xml"   If xml_document.documentElement Is Nothing Then     Exit Sub   End If   '寻找节点   Set values_node = xml_document.selectSingleNode("作者信息")   '读取各个节点的值   txtName.Text = GetNodeValue(values_node, "网名", "???")   txtSex.Text = GetNodeValue(values_node, "性别", "???")   txtHand.Text = GetNodeValue(values_node, "手机", "???")   txtTel.Text = GetNodeValue(values_node, "电话", "???")   txtQQ.Text = GetNodeValue(values_node, "QQ", "???")   txtPage.Text = GetNodeValue(values_node, "个人主页", "???") End Sub Private Function GetNodeValue(ByVal start_at_node As IXMLDOMNode, ByVal node_name As String, Optional ByVal default_value As String = "") As String   Dim value_node As IXMLDOMNode   Set value_node = start_at_node.selectSingleNode(".//" & node_name)   If value_node Is Nothing Then     GetNodeValue = default_value   Else     GetNodeValue = value_node.Text   End If End Function '保存现有的值 Private Sub SaveValues()   Dim xml_document As DOMDocument   Dim values_node As IXMLDOMNode   '建立XML文件   Set xml_document = New DOMDocument   Set values_node = xml_document.createElement("作者信息")   xml_document.appendChild values_node   CreateNode values_node, "网名", txtName.Text   CreateNode values_node, "性别", txtSex.Text   CreateNode values_node, "手机", txtHand.Text   CreateNode values_node, "电话", txtTel.Text   CreateNode values_node, "QQ", txtQQ.Text   CreateNode values_node, "个人主页", txtPage.Text   '保存XML文件   xml_document.save p_AppPath & "test.xml" End Sub Private Sub CreateNode(ByVal parent As IXMLDOMNode, ByVal node_name As String, ByVal node_value As String)   Dim new_node As IXMLDOMNode   Set new_node = parent.ownerDocument.createElement(node_name)   new_node.Text = node_value   parent.appendChild new_node End Sub 最后运行程序,看一下效果 该文章在 2012/7/9 0:43:28 编辑过 
 | 关键字查询 相关文章 正在查询... | ||||||