我正在处理一个vbscript,它需要在命令提示符下运行并传递args,并将xls文件(带有多个工作表)转换为dat文件.dat文件的格式在外部XML文件中指定。
xml文件如下所示
<RECORD>
<CD>
<Name>HEAD</Name>
<Length>4</Length>
</CD>
<CD>
<Name>ORGCODE</Name>
<Length>5</Length>
</CD>
<CD>
<Name>ORGNAME</Name>
<Length>30</Length>
</CD><CD>
<Name>SCNAME</Name>
<Length>30</Length>
</CD>
<CD>
<Name>FILLER</Name>
<Length>290</Length>
</CD>
</RECORD>
我想获取长度的文本和计数(在本例中为5),然后将文本添加到字典中。稍后我将使用它来确定我在dat文件中需要多少空格。
我尝试过以下但是没有用
Set objXML = CreateObject("Microsoft.XMLDOM")
objXML.Load(fileloc)
Set obj = objXML.getElementsByTagName("Length")
For i = 1 To obj.length
objDict.Add i, obj.Item(i).Value()
Next
“============================================== ==========
Dim objXML : Set objXML = CreateObject("Msxml2.DOMDocument")
objXML.setProperty "SelectionLanguage", "XPath"
objXML.async = False
objXML.load fileloc
Dim sXPath : sXPath = "/RECORD/CD/Length"
Dim ndlX : Set ndlX = objXML.selectNodes(sXPath)
For i = 1 To ndlX.length
msgbox "found"
Next
以下是我之前编写并通过QTP工作的代码
“============================================== ======
Set objDict = CreateObject ("Scripting.Dictionary")
Set objXML = XMLUtil.CreateXML()
objXML.LoadFile(fileloc)
Set obj = objXML.ChildElementsByPath("/RECORD/CD/Length")
For i = 1 To obj.Count
objDict.Add i, obj.Item(i).Value()
Next
有人可以帮忙吗?