六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

首頁 > 電腦資訊 > 電腦知識

用vb將word文檔生成xml文件并互相轉(zhuǎn)換

作者:佚名   來源:本站   時間:2018-07-26  點擊:174次

1. 建立一個新的vb工程。

2. 引用 Microsoft XML,版本 2.0 或以上。

3. 在窗體form1上建立按鈕 cmdCreateXML 和 cmdGetBinary

代碼:

Option Explicit

Dim oDoc As DOMDocument

Dim DOCINPATH As String

Dim XMLOUTPATH As String

Dim DOCOUTPATH As String

Private Sub cmdCreateXML_Click()

Dim oEle As IXMLDOMElement

Dim oRoot As IXMLDOMElement

Dim oNode As IXMLDOMNode

DOCINPATH = App.Path & “DocInput.doc”

XMLOUTPATH = App.Path & “XmlOuput.xml”

Call ReleaseObjects

Set oDoc = New DOMDocument

oDoc.resolveExternals = True

注釋: Create processing instruction and document root

Set oNode = oDoc.createProcessingInstruction(“xml”, “version=注釋:1.0注釋:”)

Set oNode = oDoc.insertBefore(oNode, oDoc.childNodes.Item(0))

注釋: Create document root

Set oRoot = oDoc.createElement(“Root”)

Set oDoc.documentElement = oRoot

oRoot.setAttribute “xmlns:dt”, “urn:schemas-microsoft-com:datatypes”

注釋: Add a few simple nodes with different datatypes

Set oNode = oDoc.createElement(“Document”)

oNode.Text = “Demo”

 

oRoot.appendChild oNode

Set oNode = oDoc.createElement(“CreateDate”)

oRoot.appendChild oNode

Set oEle = oNode

注釋: Use DataType so MSXML will validate the data type

oEle.dataType = “date”

oEle.nodeTypedValue = Now

Set oNode = oDoc.createElement(“bgColor”)

oRoot.appendChild oNode

Set oEle = oNode

注釋: Use DataType so MSXML will validate the data type

oEle.dataType = “bin.hex”

oEle.Text = &HFFCCCC

Set oNode = oDoc.createElement(“Data”)

oRoot.appendChild oNode

Set oEle = oNode

注釋: Use DataType so MSXML will validate the data type

oEle.dataType = “bin.base64”

注釋: Read in the data

oEle.nodeTypedValue = ReadBinData(DOCINPATH)

注釋: Save xml file

oDoc.save XMLOUTPATH

MsgBox XMLOUTPATH & “ is created for you.”

End Sub

Function ReadBinData(ByVal strFileName As String) As Variant

Dim lLen As Long

Dim iFile As Integer

Dim arrBytes() As Byte

Dim lCount As Long

Dim strOut As String

注釋:Read from disk

iFile = FreeFile()

Open strFileName For Binary Access Read As iFile

lLen = FileLen(strFileName)

ReDim arrBytes(lLen - 1)

Get iFile, , arrBytes

Close iFile

ReadBinData = arrBytes

End Function

Private Sub WriteBinData(ByVal strFileName As String)

Dim iFile As Integer

Dim arrBuffer() As Byte

Dim oNode As IXMLDOMNode

If Not (oDoc Is Nothing) Then

注釋: Get the data

Set oNode = oDoc.documentElement.selectSingleNode(“/Root/Data”)

注釋: Make sure you use a byte array instead of variant

arrBuffer = oNode.nodeTypedValue

注釋: Write to disk

iFile = FreeFile()

Open strFileName For Binary Access Write As iFile

Put iFile, , arrBuffer

Close iFile

End If

End Sub

Private Sub cmdGetBinary_Click()

DOCOUTPATH = App.Path & “DocOutput.doc”

Set oDoc = New DOMDocument

If oDoc.Load(XMLOUTPATH) = True Then

注釋: Save the Doc as another file

WriteBinData DOCOUTPATH

MsgBox DOCOUTPATH & “ is created for you.”

Else

MsgBox oDoc.parseError.reason

End If

End Sub

Private Sub Form_Unload(Cancel As Integer)

ReleaseObjects

End Sub

Private Sub ReleaseObjects()

Set oDoc = Nothing

End Sub

4. 建立word文檔DocInput.doc。

5. 保存文檔在工程目錄下。

6. 運行程序點擊cmdCreateXML 按鈕。一個 XML 文件XmlOuput.xml 就建立了。

點擊 cmdGetBinary 按鈕就可以生成word文檔 DocOutput.doc。

按照上面的方法,同樣可以將任意的二進制數(shù)據(jù)存為xml,然后再重新生成二進制數(shù)據(jù)。可以用于web傳輸?shù)鹊瓤梢允褂脁mlhttp的地方。

推薦游戲

換一換
主站蜘蛛池模板: 亚洲精品中文字幕无乱码 | 一本久久精品一区二区 | 午夜影院普通用户体验区 | 在线精品亚洲 | 一级女性全黄久久生活片免费 | 欧美偷拍色图 | 色欧美综合 | 午夜看片 | 欧美性战| 亚洲日韩中文字幕在线播放 | 午夜精品久久久久久久第一页 | 日韩在线三级 | 亚洲爱爱图片 | 亚洲一二三四区 | 日本高清一区二区三区水蜜桃 | 欧美亚洲日本 | 色香蕉视频 | 日韩毛片在线看 | 青久久 | 青草热视频 | 日韩一区国产二区欧美三 | 天堂v亚洲国产v一区二区 | 亚洲伦理在线观看 | 天堂理论片 | 天天欧美 | 日本一区二区三区在线 观看网站 | 色成网 | 午夜精品久久久久 | 全黄大全大色全免费大片 | 日韩欧美成人乱码一在线 | 欧美在线天堂 | 情不自禁完整版在线观看免费 | 日韩版码免费福利视频 | 五月婷婷婷婷 | 日本japanese丰满高清成人视 | 天天综合天天看夜夜添狠狠玩 | 青青草好| 青春草在线观看精品免费视频 | 亚洲第6页 | 性欧美人与物videos另类 | 午夜小影院 |