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

  1. linenum
  2. <% 
  3. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  4. ' VBScript 使用 xmldom 检测/创建/读取/更改 XML 文件数据 实例 By shawl.qiu
  5. '   http://blog.csdn.net/btbtd
  6. ' shawl.qiuATgmail.com
  7. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  8.         path=server.MapPath("config.xml") '要操作的文件路径
  9.     set objxml=createObject("microsoft.xmldom") '创建 XMLDOM 对象
  10.         objxml.load(path) '加载 XML 文件
  11.         if objxml.parseError<>0 then '//检测文件是否存在 0为存在;不等于0为不存在
  12.             '如果文件不存在, 执行以下操作
  13.             
  14.             objxml.appendChild(objxml.createElement("root")) '//创建根节点
  15.             
  16.             '-' //创建根节点 子节点1 Child1
  17.             objxml.selectSingleNode("//root").appendChild(objxml.createElement("Child1"))
  18.             
  19.             '// 创建子节点1 Child1 的 子节点 Children1, 并添加文本
  20.             objxml.selectSingleNode("//root/Child1").appendChild(objxml.createElement("Children1"))_
  21.             .text="<h1>Child1 Children1 text</h1>"
  22.             
  23.             '-'' //创建子节点1 Child1 的子节点 Children2, 并添加 CDATA 文本
  24.             objxml.selectSingleNode("//root/Child1").appendChild(objxml.createElement("Children2"))
  25.             objxml.selectSingleNode("//root/Child1/Children2").appendChild(objxml.createCDATASection _ 
  26.             ("<h2>Child1 Children2 CDATASection</h2>"))
  27.             
  28.             '-''' //创建子节点1 的子节点 Children3
  29.             objxml.selectSingleNode("//root/Child1").appendChild(objxml.createElement("Children3"))
  30.             
  31.             ''// 创建根节点 子节点2
  32.             objxml.selectSingleNode("//root").appendChild(objxml.createElement("Child2"))
  33.             
  34.             '--- // 添加 XML 文件 的 结构标识
  35.             objxml.insertBefore objxml.createProcessingInstruction("xml","version=""1.0""" &_ 
  36.             " encoding=""utf-8"""), objxml.firstChild
  37.             
  38.             '//保存文件
  39.             objxml.save(path)
  40.         end if
  41.             '''-' // 读出根节点及其子节点的所有文本, 也就是读出 XML 文档的全部文本
  42.             response.write objxml.selectSingleNode("//root").text&"<br/>"
  43.             
  44.             '''-'' // 读出子节点 Child1 及其子节点的所有文本数据
  45.             response.write objxml.selectSingleNode("//root/Child1").text&"<br/>"
  46.             
  47.             ''''-' // 读出子节点 Child1 的子节点 Children2 的文本数据
  48.             response.write objxml.selectSingleNode("//root/Child1/Children2").text&"<br/>"
  49.             
  50.             ''''-'' // 为 节点1 的子节点 Children3 赋文本值, 并读出文本数据
  51.             objxml.selectSingleNode("//root/Child1/Children3").text="Root Child1 Children3 text"
  52.             response.write objxml.selectSingleNode("//root/Child1/Children3").text&"<br/>"
  53.             
  54.             ''''-'' // 清空子节点 Child1 的子节点 Children2 的文本数据, 并添加 CDATA 数据, 再读出文本数据
  55.             objxml.selectSinglenode("//root/Child1/Children2").text=""
  56.             objxml.selectSinglenode("//root/Child1/Children2").appendChild(objxml.createCDATASection("<h3>Child1 Children2 new CDATASection</h3>"))
  57.             response.write objxml.selectSinglenode("//root/Child1/Children2").text&"<br/>"
  58.             
  59.             ''--- //保存数据
  60.             objxml.save(path)
  61.     set objxml=nothing
  62.     
  63.     '//小提示: 关于 是否使用 CDATASection
  64.     '如果只使用 Response.write 读出 XML 文件数据, 大概不需要使用 CDATASECTION, Response.write 自动 转换
  65.     '特殊的 ASCII 字符为 HTML 字符
  66.     '如果使用 FSO 读取 XML 数据, 有点牛头不对马嘴的味道
  67. %>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值