小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

VB和VB.NET中的XML操作 (3)

 zele 2010-10-23
 熟悉了如何用Visual Basic 6創(chuàng)建XML文件,接下來(lái),我們將編寫(xiě)一個(gè)程序,使得程序開(kāi)始運(yùn)行時(shí),程序從XML文件中加載數(shù)據(jù),在程序運(yùn)行結(jié)束時(shí),將程序中的現(xiàn)行值存入XML文件中。

  首先,建立一個(gè)名叫Personal.xml的文件:

<?xml version="1.0" encoding="GB2312"?>

<個(gè)人信息>

<姓名>洪萬(wàn)福</姓名>

<性別>男</性別>

<出生日期>1983年x月x日</出生日期>

<地址>福建省廈門(mén)市集美大學(xué)水產(chǎn)學(xué)院新區(qū)270#</地址>

<郵編>361021</郵編>

QQ>24948251</QQ>

<個(gè)人主頁(yè)>http://hongwanfu.126.com</個(gè)人主頁(yè)>

</個(gè)人信息>

  其中,encoding="GB2312"是為了防止顯示中文時(shí)出現(xiàn)亂碼。

  接著,進(jìn)入Visual Basic 6,建立7個(gè)Label和7個(gè)TextBox, 具體如圖:



  隨后,編寫(xiě)如下代碼:

Option Explicit
Private p_AppPath As String
Private Sub Form_Load()
 ' 獲得程序運(yùn)行目錄
 p_AppPath = App.Path
 If Right$(p_AppPath, 1) <> "\" Then p_AppPath = p_AppPath & "\"
 ' 加載值
 LoadValues
End Sub

Private Sub Form_Unload(Cancel As Integer)
 ' 保存現(xiàn)有的值
 SaveValues
End Sub

Private Sub LoadValues()

 Dim xml_document As DOMDocument

 Dim values_node As IXMLDOMNode

 ' 載入文件

 Set xml_document = New DOMDocument
 xml_document.Load p_AppPath & "Personal.xml"
 If xml_document.documentElement Is Nothing Then

  Exit Sub

 End If

 '尋找節(jié)點(diǎn)
 Set values_node = xml_document.selectSingleNode("個(gè)人信息")
 ' 讀取各個(gè)節(jié)點(diǎn)的值
 txtName.Text = GetNodeValue(values_node, "姓名", "???")
 txtSex.Text = GetNodeValue(values_node, "性別", "???")
 txtBirthday.Text = GetNodeValue(values_node, "出生日期", "???")
 txtAddress.Text = GetNodeValue(values_node, "地址", "???")
 txtZip.Text = GetNodeValue(values_node, "郵編", "???")
 txtQQ.Text = GetNodeValue(values_node, "QQ", "???")
 txtHomepage.Text = GetNodeValue(values_node, "個(gè)人主頁(yè)", "???")

End Sub

' 返回各個(gè)節(jié)點(diǎn)的值

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("個(gè)人信息")
 xml_document.appendChild values_node
 CreateNode values_node, "姓名", txtName.Text
 CreateNode values_node, "性別", txtSex.Text
 CreateNode values_node, "出生日期", txtBirthday.Text
 CreateNode values_node, "地址", txtAddress.Text
 CreateNode values_node, "郵編", txtZip.Text
 CreateNode values_node, "QQ", txtQQ.Text
 CreateNode values_node, "個(gè)人主頁(yè)", txtHomepage.Text
 ' 保存XML文件
 xml_document.save p_AppPath & "Personal.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)行結(jié)果如下:



  雖然,MSXML提供了從Visual Basic6.0加載和存儲(chǔ)XML文檔的工具,但是,對(duì)其的應(yīng)用要求程序員對(duì)VB和MSXML的COM接口有一定的認(rèn)識(shí),所以,并不是得到很廣泛的應(yīng)用。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多