VBScript怎么操作XML文件 MSXML2.DOMDocument

VBScript通过MSXML2.DOMDocument.6.0对象可加载、解析、修改和保存XML;支持文件/字符串加载、XPath查询、节点增删改及保存,但无内置格式化功能。

vbscript怎么操作xml文件 msxml2.domdocument

VBScript 使用 MSXML2.DOMDocument 对象可以方便地加载、解析、修改和保存 XML 文件。这是 Windows 系统中默认支持的 COM 组件,无需额外安装(XP 及以后系统基本都自带 MSXML 3.0 或更高版本,推荐用 MSXML2.DOMDocument.6.0 提高性能与安全性)。

加载 XML 文件或字符串

支持从文件路径或 XML 字符串加载内容:

  • 从文件加载:Set xmlDoc = CreateObject(“MSXML2.DOMDocument.6.0”)
    xmlDoc.async = False
    xmlDoc.load “C:/data.xml”
  • 从字符串加载:xmlDoc.loadXML “A
  • 加载后务必检查是否成功:If xmlDoc.parseError.errorCode 0 Then WScript.Echo “加载失败:” & xmlDoc.parseError.reason

查询节点(XPath 支持)

使用 selectSingleNodeselectNodes 配合 XPath 表达式获取元素:

飞笔AI

飞笔AI

飞笔AI致力于创作高质量的海报等图像,满足用户个性化设计需求。用户可通过平台便捷地创建各种风格和主题的海报、新媒体素材图等。

下载

  • 查单个节点:Set node = xmlDoc.selectSingleNode(“/root/item[@id=’1′]”)
  • 查多个节点:Set nodeList = xmlDoc.selectNodes(“/root/item”)
    For i = 0 To nodeList.length – 1
      WScript.Echo nodeList(i).text
    Next
  • 注意:XPath 区分大小写,且属性需用 @attr 语法;若文档有命名空间,需先设置 xmlDoc.setProperty "SelectionNamespaces", "xmlns:x='http://example.com'"

创建和修改节点

可动态添加、更新或删除节点:

  • 创建新元素:Set newItem = xmlDoc.createElement(“item”)
    newItem.setAttribute “id”, “2”
    newItem.text = “B”
  • 追加到父节点:xmlDoc.documentElement.appendChild newItem
  • 修改已有值:node.text = “Updated”node.setAttribute “status”, “done”
  • 删除节点:node.parentNode.removeChild node

保存 XML 到文件

调用 save 方法写入磁盘(路径必须存在,否则报错):

  • xmlDoc.save “C:/data_new.xml”
  • 如需格式化缩进(默认无换行缩进),VBScript 本身不支持自动美化,可手动拼接字符串,或借助 XSLT 转换(较复杂),一般生产环境建议改用 PowerShell 或其他语言处理格式化需求
  • 保存前建议验证:If xmlDoc.documentElement Is Nothing Then WScript.Echo “文档为空,无法保存”

https://www.php.cn/faq/2015414.html

发表回复

Your email address will not be published. Required fields are marked *