您的位置:首页 > 编程语言 > VB

VBScript 使用 xmldom 检测/创建/读取/更改 XML 文件数据 实例 By shawl.qiu

2006-07-31 12:44 1351 查看
linenum
<% 
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' VBScript 使用 xmldom 检测/创建/读取/更改 XML 文件数据 实例 By shawl.qiu
'   http://blog.csdn.net/btbtd
' shawl.qiuATgmail.com
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        path=server.MapPath("config.xml") '要操作的文件路径
    set objxml=createObject("microsoft.xmldom") '创建 XMLDOM 对象
        objxml.load(path) '加载 XML 文件
        if objxml.parseError<>0 then '//检测文件是否存在 0为存在;不等于0为不存在
            '如果文件不存在, 执行以下操作
            
            objxml.appendChild(objxml.createElement("root")) '//创建根节点
            
            '-' //创建根节点 子节点1 Child1
            objxml.selectSingleNode("//root").appendChild(objxml.createElement("Child1"))
            
            '// 创建子节点1 Child1 的 子节点 Children1, 并添加文本
            objxml.selectSingleNode("//root/Child1").appendChild(objxml.createElement("Children1"))_
            .text="<h1>Child1 Children1 text</h1>"
            
            '-'' //创建子节点1 Child1 的子节点 Children2, 并添加 CDATA 文本
            objxml.selectSingleNode("//root/Child1").appendChild(objxml.createElement("Children2"))
            objxml.selectSingleNode("//root/Child1/Children2").appendChild(objxml.createCDATASection _ 
            ("<h2>Child1 Children2 CDATASection</h2>"))
            
            '-''' //创建子节点1 的子节点 Children3
            objxml.selectSingleNode("//root/Child1").appendChild(objxml.createElement("Children3"))
            
            ''// 创建根节点 子节点2
            objxml.selectSingleNode("//root").appendChild(objxml.createElement("Child2"))
            
            '--- // 添加 XML 文件 的 结构标识
            objxml.insertBefore objxml.createProcessingInstruction("xml","version=""1.0""" &_ 
            " encoding=""utf-8"""), objxml.firstChild
            
            '//保存文件
            objxml.save(path)
        end if
            '''-' // 读出根节点及其子节点的所有文本, 也就是读出 XML 文档的全部文本
            response.write objxml.selectSingleNode("//root").text&"<br/>"
            
            '''-'' // 读出子节点 Child1 及其子节点的所有文本数据
            response.write objxml.selectSingleNode("//root/Child1").text&"<br/>"
            
            ''''-' // 读出子节点 Child1 的子节点 Children2 的文本数据
            response.write objxml.selectSingleNode("//root/Child1/Children2").text&"<br/>"
            
            ''''-'' // 为 节点1 的子节点 Children3 赋文本值, 并读出文本数据
            objxml.selectSingleNode("//root/Child1/Children3").text="Root Child1 Children3 text"
            response.write objxml.selectSingleNode("//root/Child1/Children3").text&"<br/>"
            
            ''''-'' // 清空子节点 Child1 的子节点 Children2 的文本数据, 并添加 CDATA 数据, 再读出文本数据
            objxml.selectSinglenode("//root/Child1/Children2").text=""
            objxml.selectSinglenode("//root/Child1/Children2").appendChild(objxml.createCDATASection("<h3>Child1 Children2 new CDATASection</h3>"))
            response.write objxml.selectSinglenode("//root/Child1/Children2").text&"<br/>"
            
            ''--- //保存数据
            objxml.save(path)
    set objxml=nothing
    
    '//小提示: 关于 是否使用 CDATASection
    '如果只使用 Response.write 读出 XML 文件数据, 大概不需要使用 CDATASECTION, Response.write 自动 转换
    '特殊的 ASCII 字符为 HTML 字符
    '如果使用 FSO 读取 XML 数据, 有点牛头不对马嘴的味道
%>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐