我遇到了无法选择需要删除的特定XML节点的问题。我已经尝试通过使用适用于某些XML文件的XPath来选择节点,但我无法找到更复杂文件中节点的正确XPath。如何使用vbscript删除XML文件中的特定节点
有没有人知道一个免费的工具,它可以加载一个XML文件,以便用户可以选择一个特定的节点并接收准确的XPath,而无需在路径中枚举?
/root/anything[2]
< - 不幸的是我不能使用这样的陈述,因为元素的数量可能会改变。我需要一个基于属性的表达式。
如果没有用于此操作的免费软件工具,是否有人知道如何选择所需节点的另一种方式?
XML示例:
根节点: SmsFormData
属性:的xmlns:XSI = “http://www.w3.org/2001/XMLSchema-instance” 的xmlns: xsd =“http://www.w3.org/2001/XMLSchema”FormatVersion =“1.0”xmlns =“http://schemas.microsoft.com/SystemsManagementServer/2005/03/ConsoleFramework”
子节点:表格
个属性:编号= “一些GUID” 的CustomData = “一些数据” FormType = “某种类型的” ForceRefresh = “假”
儿童/子节点:页数
儿童/儿童/子节点:页
属性: VENDORID = “VENDORNAME” ID = “一些GUID” 大会= “dll文件名” 命名空间= “一些命名空间” 类型= “某种” 的helpID = “”>
我的XPath表达式选择此特定网页现在是:
XPATH =/SmsFormData/Form/Pages/Page[@Id="some Guid"]
要做到我用下面的VBScript代码的选择:
Set objDOM = CreateObject("Msxml2.DOMDocument.4.0")
objDOM.async = false
objDOM.load(file)
set objNode = objDOM.selectSingleNode(xPath)
问题现在是objNode
对象是空的。该节点未被选中,但为什么?
关于您尝试使用的xml示例的一些示例? – Kev 2008-10-06 09:50:20