开发者社区> 长征2号> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

QTP的那些事--有关xml的操作函数

简介:
+关注继续查看

filepath="C:/UserDedinedEnvironment.xml"

Set dics = GetVars(filepath)

addVar filepath,"tttt","aaaa"
Set dics = GetVars(filepath)
updateVar filepath,"tttt","55555555"
Set dics = GetVars(filepath)
delVar filepath,"tttt"
Set dics = GetVars(filepath)
xx=1

Function GetVars(filepath)    '已完成
    Set objxml= CreateObject("MSXML.DOMDocument")
    objxml.load filepath
    Set Environ = objxml.lastChild    '获得<Environment>节点
    Set dic = CreateObject("Scripting.Dictionary")
    allVar = Environ.childNodes.length    '获得<Environment>节点的子节点数量,即变量个数。
    For i=0 To allVar-1
        Set vars=Environ.childNodes.item(i)    '获得<Variable>节点
        var_name=vars.childNodes.item(0).nodeTypedValue
        var_value=vars.childNodes.item(1).nodeTypedValue
        dic.Add var_name,var_value
    Next
    Set GetVars = dic    '返回dictionary的环境变量列表
    Set dic = Nothing
End Function

Function addVar(filepath,varname,varvalue)    '已完成
    Set objxml= CreateObject("MSXML.DOMDocument")
    objxml.load filepath
    Set Environ = objxml.lastChild    '获得<Environment>节点

    Set dic = CreateObject("Scripting.Dictionary")
    allVar = Environ.childNodes.length    '获得<Environment>节点的子节点数量,即变量个数。
    For i=0 To allVar-1
        Set vars=Environ.childNodes.item(i)    '获得<Variable>节点
        var_name=vars.childNodes.item(0).nodeTypedValue
        var_value=vars.childNodes.item(1).nodeTypedValue
        dic.Add var_name,var_value
    Next
    If dic.Exists(varname) Then
        updateVar filepath,varname,varvalue
        Exit Function
    End If
    Set vars =Environ.childNodes.item(0)
    Set newVar= vars.cloneNode(1)    '复制<Variable>节点
    '修改子节点的值
    newVar.childNodes.item(0).nodeTypedValue = varname
    newVar.childNodes.item(1).nodeTypedValue = varvalue
    '添加节点
    Set newEnv= Environ.appendChild(newVar)
    '保存xml
    objxml.save filepath
End Function

Function updateVar(filepath,varname,varvalue)  '已完成
    Set objxml= CreateObject("MSXML.DOMDocument")
    objxml.load filepath
    Set Environ = objxml.lastChild    '获得<Environment>节点
    allVar = Environ.childNodes.length    '获得<Environment>节点的子节点数量,即变量个数。
'    Set dic = CreateObject("Scripting.Dictionary")
'    For i=0 To allVar-1
'        Set vars=Environ.childNodes.item(i)    '获得<Variable>节点
'        var_name=vars.childNodes.item(0).nodeTypedValue
'        var_value=vars.childNodes.item(1).nodeTypedValue
'        dic.Add var_name,var_value
'    Next
'    If Not dic.Exists(varname) Then
'        addVar filepath,varname,varvalue
'        Exit Function
'    End If

    For i=0 To allVar-1
        Set vars=Environ.childNodes.item(i)    '获得<Variable>节点
        var_name=vars.childNodes.item(0).nodeTypedValue
        If var_name=varname Then
            vars.childNodes.item(1).nodeTypedValue = varvalue    '更新变量值
            Exit For
        End If
    Next

    '保存xml
    objxml.save filepath
End Function

Function delVar(filepath,varname)    '已完成
    Set objxml= CreateObject("MSXML.DOMDocument")
    objxml.load filepath
    Set Environ = objxml.lastChild    '获得<Environment>节点
    allVar = Environ.childNodes.length    '获得<Environment>节点的子节点数量,即变量个数。
    If allVar=1 Then
        Exit Function
    End If
    For i=0 To allVar-1
        Set vars=Environ.childNodes.item(i)    '获得<Variable>节点
        var_name=vars.childNodes.item(0).nodeTypedValue
        If var_name=varname Then
            Environ.removeChild(vars)     '删除节点
            Exit For
        End If
    Next

    '保存xml
    objxml.save filepath
End Function




本文转自hcy's workbench博客园博客,原文链接:http://www.cnblogs.com/alterhu/archive/2012/02/03/2337164.html,如需转载请自行联系原作者。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
XML——XML操作
XML——XML操作
24 0
线上服务 静态html CMS 发布rsync 同步
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51279582 未经博主允许不得转载。 博主地址是:http://blog.csdn.net/freewebsys 1,静态资源 线上服务,有静态的html 比如首页,资讯页面,关于公司,加入我们,帮助页面。 都是静态的html页面。后台
1032 0
C#操作XML增删改查
原文:C#操作XML增删改查 XML文件是一种常用的文件格式,不管是B/S还是C/S都随处可见XML的身影。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。
822 0
+关注
1703
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载