VB讀寫XML文檔
當(dāng)前位置:點(diǎn)晴教程→知識管理交流
→『 技術(shù)文檔交流 』
在VB中我們可以使用XML解釋器來對XML文件進(jìn)行各種操作.XML解釋器被封裝在一個名字叫做msxml.dll的動態(tài)連接庫文件中,它是一個COM對象.因此所有可以兼容ActiveX的環(huán)境中都可以使用該方法操作XML文檔. 我們用一個實例來說明. 首先,我們建立一個名字為test.xml的xml文件.內(nèi)容如下: <作者信息> <網(wǎng)名>古鐵神刀</網(wǎng)名> <性別>男</性別> <手機(jī)>13584517846</手機(jī)> <電話>0531-82296272</電話> <QQ>362880403</QQ> <個人主頁>http://www.xyxtl.cn</個人主頁> </作者信息> 新建一個標(biāo)準(zhǔn)EXE工程。選擇"工程" - "引用",選取"Microsoft XML V2.0"或更高版本.這樣我們就可以使用xml解釋器了. 接下來在form中添加控件. 切換到代碼視圖,添加如下代碼: Option Explicit Private p_AppPath As String '當(dāng)前目錄路徑 Private Sub Form_Load() '得到當(dāng)前目錄 p_AppPath = App.Path If Right(p_AppPath, 1) <> "/" And Right(p_AppPath, 1) <> "" Then p_AppPath = p_AppPath & "/" End If End Sub 分別雙擊載入、保存、退出系統(tǒng),添加代碼: Private Sub cmdLoad_Click() '載入文件內(nèi)容 loadValues End Sub Private Sub cmdSave_Click() '保存當(dāng)前內(nèi)容 saveValues End Sub Private Sub cmdQuit_Click() Unload Me End Sub 現(xiàn)在我們編寫過程實現(xiàn)文件的讀入和寫出: 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 '尋找節(jié)點(diǎn) Set values_node = xml_document.selectSingleNode("作者信息") '讀取各個節(jié)點(diǎn)的值 txtName.Text = GetNodeValue(values_node, "網(wǎng)名", "???") txtSex.Text = GetNodeValue(values_node, "性別", "???") txtHand.Text = GetNodeValue(values_node, "手機(jī)", "???") 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 '保存現(xiàn)有的值 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, "網(wǎng)名", txtName.Text CreateNode values_node, "性別", txtSex.Text CreateNode values_node, "手機(jī)", 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 最后運(yùn)行程序,看一下效果 該文章在 2012/7/9 0:43:28 編輯過
|
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |