利用vbs读取XML中的某个指定子叶节点 (转)
Function GetXml (strXmlFilePath,nodestring)
Dim xmlDoc,xmlRoot
Set xmlDoc = CreateObject("Microsoft.XMLDOM") '创建XML DOM对象
xmlDoc.async = False '控制加载模式为同步模式(xml树加载完毕后再执行后续代码)
xmlDoc.load strXmlFilePath '载入xml文件
If xmlDoc.parseError.errorCode <> 0 Then
MsgBox "XML文件格式不对,原因是:" & Chr(13) & xmlDoc.parseError.reason
Exit Function
End If
Set xmlRoot = xmlDoc.documentElement
Nodes = Split(nodestring, "\")
GetXml = xmlRecursion(xmlRoot,Nodes,1,true)
set xmlDoc = Nothing
End Function
Function xmlRecursion(byval xmlNode,NodeNames,NodeIndex,isContinue)
If xmlNode.hasChildNodes Then
If xmlNode.childNodes.item(0).nodeName = "#text" Then
xmlRecursion= xmlNode.childNodes.item(0).nodeValue
isContinue = false
End If
End If
If xmlNode.hasChildNodes Then
For Each childNodeItem In xmlNode.ChildNodes
If isContinue Then
If childNodeItem.hasChildNodes and childNodeItem.nodeName = NodeNames(NodeIndex) Then
xmlRecursion = xmlRecursion(childNodeItem,NodeNames,NodeIndex+1,isContinue)
End If
End If
Next
End If
End Function
---------------------------------------------------------------------------------------------------
调用的时候直接写 GetXml(XML文件路径,节点路径)
如:msgbox GetXml("c:\test2.xml","根节点\子节点")
如果xml文件的内容是下面的内容的话, msgbox GetXml("文件路径","ROOT\TestCase0\TestResult") 就会显示出 “3”,此函数不适取节点的属性。以后再完善吧,呵呵
------------------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<ROOT>
<TestCase0>
<TestNumberOne>1</TestNumberOne>
<TestNumberTwo>2</TestNumberTwo>
<TestNumberThree>+</TestNumberThree>
<TestResult>3</TestResult>
</TestCase0>
<TestCase1>
<TestNumberOne>3</TestNumberOne>
<TestNumberTwo>2</TestNumberTwo>
<TestNumberThree>-</TestNumberThree>
<TestResult>1</TestResult>
</TestCase1>
<TestCase3>
<TestNumberOne>3</TestNumberOne>
<TestNumberTwo>7</TestNumberTwo>
<TestNumberThree>*</TestNumberThree>
<TestResult>21</TestResult>
</TestCase3>
<TestCase2>
<TestNumberOne>2</TestNumberOne>
<TestNumberTwo>5</TestNumberTwo>
<TestNumberThree>/</TestNumberThree>
<TestResult>0.4</TestResult>
</TestCase2>
</ROOT>
------------------------------------------------------------------------
转载于:https://www.cnblogs.com/ryhan/archive/2011/05/04/2036537.html
利用vbs读取XML中的某个指定子叶节点 (转)相关推荐
- java获取返回xml节点里的值,关于用java读取xml中节点的值解决方案
关于用java读取xml中节点的值 在写个工程,用到了如下配置的XML文档,时间紧没法网上资料太多一时看了头大,实在不知道怎么解析了,各位大神麻烦指教一下. 配置文档内容如下 hibernate-co ...
- delphi读取xml中的内容property name传递参数_Python 进阶知识全篇-XML 解析
什么是 XML? XML 指可扩展标记语言(eXtensible Markup Language),标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. 你可以通过本站学习 XML ...
- delphi读取xml中的内容property name传递参数_python3 Json和XML数据解析
一.Json数据解析 Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数: json.dumps(): 对数据进行编码. json.loads(): 对数据进行 ...
- AndroidStudio中利用openFileOutput将数据保存在文件中,利用openFileInput读取文件中的数据
一.要实现的功能 将输入框中的数据保存到指定文件名的文件中,实现数据的持久化:如果数据已经保存了,活动下次再启动的时候,就将保存在文件中的数据读取出来,显示在输入框中. 二.基本知识 利用活动生命周期 ...
- 利用js读取xml文件
JS读取XML文件 XML文件: <?xml version="1.0" encoding="utf-8" ?> <CATALOG>&l ...
- python读取XML中bndbox和object name的方法
直接贴代码了,封装为了函数,直接调用即可.其中有几个点需要注意. 1.bndbox下面有4个子对象,因此不能直接使用firstChild来找到内容,需要从该对象里面继续寻找标签为xmin等这样的对象, ...
- 利用XPath读取Xml文件
之所以要引入XPath的概念,目的就是为了在匹配XML文档结构树时能够准确地找到某一个节点元素.可以把XPath比作文件管理路径:通过文件管理路 径,可以按照一定的规则查找到所需要的文件:同样,依据X ...
- 利用FME读取Word中的表格
利用FME的MSWordStyler转换器和Word写模块,我们可以将一些简单的文本和表格写出到Word文档格式中,转换器和写模块截图如下: 图1 MSWordStyler转换器 图2 Word写模块 ...
- c#读取xml中特定节点的值(实例)
(转载请注明出处:http://blog.csdn.net/buptgshengod) 将要读取的是smoke下floortype中的value值,xml如下 <?xml version=&qu ...
- 利用python读取excel中的公司名称获取公司的经营范围并回填进excel中
前几天朋友托我帮完成一份地区教育类型公司的经营范围,表中已经有了公司的名称及地点等信息,但是还缺少经营范围,由于数据量比较大,一个一个的去百度搜再复制到表里,工作量有点大,可能需要我好几天不吃不喝的C ...
最新文章
- 搜狗手机输入法php,在线调用搜狗云输入法
- ControllerDescriptor的认识
- BZOJ5329: [SDOI2018]战略游戏——题解
- CentOS 初体验二十一:redis常用命令:String
- angular 示例项目
- 计算机专业颈椎有问题,出现这4个表现,你的颈椎病已经很严重了!上班族尤需警惕_39健康网...
- java 两个线程同步_Java 多线程(二)—— 线程的同步
- DIV CSS在不同IE版本和FF以及Chrome中的兼容性差异解决方法(推荐)
- 【LeetCode】智商题 brainteaser(共3题)
- python中的怎么用,python中怎么用#号
- 不知道怎样计算权重?告诉你8种确定权重方法
- 论网站CDN的绕过姿势
- 第二章 软件项目确立
- H5页面调起地图导航
- Proteus仿真STM32F103R6输出正弦波
- 2016山东省第七届ACM省赛总结
- 为什么量子力学总是让人感到疑惑?
- 3D游戏建模真的很累吗?前景怎么样?又需要哪样的基础
- windows找不到文件,如何解决。
- ATC代表空中交通管制。空管调解员不过是机场可用的空中交通管制塔。在这里,您可以看到不同的航班(如101航班、202航班、707航班和808航班)。假设101航班要在机场的一个特定航站楼降落。然后飞行
热门文章
- Caffe学习3:Layer
- 缺失值了解与简单处理
- android.mk 编译选项,Android.mk中加入选项,编译生成可以直接安装的apk包
- 计算机课程联合考试是什么意思,计算机技术在职研究生能否通过一月联考的方式学习课程内容...
- C++ 引用 支持多级嵌套吗
- C++ std::condition_variable notify_one()与notify_all()的作用
- linux配置网页访问不了怎么办,本机浏览器访问不到Linux虚拟机中的nginx开启页面...
- python判断数字和字母切换_Python判断字符串是否为字母或者数字(浮点数)的多种方法...
- android灰度发布平台,移动APP灰度发布策略
- oracle的解析器,Oracle中sql量化分析工具