快速业务通道

将信息保存到一个XML文件的vbs代码

作者 佚名 来源 ASP编程 浏览 发布时间 2013-07-09
This script demonstrates how to save information to a xml file with the use of MSXML. The example xml file is used for the photo album on the site.
复制代码 代码如下:

''*****************************************************************
''** Script: CreateXML.vbs
''** Version: 1.0
''** Created: 01/12/2009 9:51PM
''** Author: Adriaan Westra
''** E-mail:
''** Purpose / Comments:
''** Create xml file for photo album
''**
''**
''** Changelog :
''** 12-01-2009 9:51 : Initial version
''**
''*****************************************************************

On Error Resume next
Dim Version : Version = "1.0" '' Script version
Dim Author : Author = "A. Westra"
Dim objXML ''XML Document object
Dim root ''Root element of the xml document
Dim newNode '' XML Node object
Dim cNode '' XML (child) Node object
Dim cNodeText '' XML Text Node object


''*****************************************************************
''** Make sure the script is started with cscript
If InStr(wscript.FullName, "wscript.exe") > 0 Then
MsgBox "Please run this script with cscript.exe." & Chr(13) & _
"For example : cscript " & WScript.ScriptName & " /?", _
vbExclamation, WScript.ScriptName
WScript.Quit(1)
End If

''*****************************************************************
''** Get commandline parameters
Set Args = Wscript.Arguments

If Args.Count = 0 Then
strImageDir = InputBox("Please give the directory name " & _
"to process : ",wscript.scriptname, strPath)
Else
If InStr(Args(0),"/?") > 0 Or InStr(UCase(Args(0)),"/H") > 0 _
Or InStr(UCase(Args(0)),"/HELP") > 0 Then
DisplayHelp
Wscript.quit(0)
Else
strImageDir = Args(0)
End if
End if

Set objXML = CreateObject("Msxml2.DOMDocument.6.0")
objXML.setProperty "SelectionLanguage", "XPath"


''*****************************************************************
''** Determine if the file exists
strXMLFile = strImageDir & "\album.xml"
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(strXMLFile) Then
''*****************************************************************
''** Read the XML File
objXML.load(strXMLFile)
Else
''*****************************************************************
''** Create the XML File
objXML.loadXML("")
End If
''*****************************************************************
''** Process directory
Set objImgDir = objFSO.GetFolder(strImageDir)
For each objFile in objImgDir.Files
If IsJPG(objFile.Name) Then
arrTemp = split(objFile.Name, ".")
strNode = arrTemp(0)

''*****************************************************************
''** Determine if the node exists
If Not XmlNodeExists(strChildNode, objXML) Then
''*****************************************************************
''** Get the root element of the xml document
Set root = objXML.documentElement
''*****************************************************************
''** Create the new node
Set newNode = objXML.createNode(1, strNode, "")
root.appendChild newNode
Set cNode = objXML.createNode(1, "alt", "")
Set cNodeText = objXML.createNode(3, "", "")
cNodeText.Text = strNode
cNode.appendChild cNodeText
newNode.appendChild cNode
Set cNode = objXML.createNode(1, "Title", "")
Set cNodeText = objXML.createNode(3, "", "")
cNodeText.Text = strNode
cNode.appendChild cNodeText
newNode.appendChild cNode
End If
End If
Next
''*****************************************************************
''** Save the xml file
objXML.save(strXMLFile)

''*****************************************************************
''** End the script
wscript.quit

''*****************************************************************
''** Function: XmlNodeExists
''** Version: 1.0
''** Created: 1/12/2009 12:14PM
''** Author: Adriaan Westra
''** E-mail:
''**
''** Purpose / Comments:
''** Determines if a node exists in XML
''**
''** Arguments :
''** strNode :Name of the XML node
''** oXML :XMl DOM Object

''**
''** Changelog :
''** 1/12/2009 12:16PM : Initial version
''**
''*****************************************************************
Function XmlNodeExists( strNode, oXML )
On Error Resume next
Set oNode = oXML.selectSingleNode(strNode)
strNodetype = oNode.nodetype
If err.number = 0 Then
XmlNodeExists = True
Else
XmlNodeExists = False
End if
End Function
''*****************************************************************
''** Sub: DisplayHelp
''** Version: 1.0
''** Created: 24-03-2003 8:22
''** Author: Adriaan Westra
''** E-mail:
''**
''** Purpose / Comments:
''** Display help for script
''**
''** Arguments :
''**
''** Wijzigingslog :
''** 24-03-2003 8:22 : Initi雔e versie
''**
''*****************************************************************
Sub DisplayHelp()
strComment = string(2,"*")
strCmntLine = String(79, "*")
wscript.echo strCmntline
wscript.echo strComment
wscript.echo strComment & " Online help for " & _
Wscript.scriptname & " version : " & Version
wscript.echo strComment
wscript.echo strComment & " Usage : cscript " & _
Wscript.scriptname & " directoryname"
wscript.echo strComment
wscript.echo strComment & " Purpose : Create XML file " & _
"for all images in given directory."
wscript.echo strComment
wscript.echo strComment & " Author : " & Author
wscript.echo strComment & " E-mail : " & Email
wscript.echo strComment
wscript.echo strCmntline
End Sub
''*****************************************************************
''** Function: IsJPG
''** Version: 1.0
''** Created: 12/29/2008 11:01PM
''** Author: Adriaan Westra
''** E-mail:
''**
''** Purpose / Comments:
''** Determine if file is jpg image
''**
''** Arguments :
''** strFilename : name of the file to check
''**
''** Wijzigingslog :
''** 12/29/2008 11:02PM : Initi雔e versie
''**
''*****************************************************************
Function IsJPG(strFilename)
Set objRegExp = New RegExp
objRegExp.Pattern = "\w.jpg"
objRegExp.IgnoreCase = True
IsJPG = objRegExp.Test(strFileName)
End Function

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号