我正在使用Microsoft XML Core Services6.0 (MSXML)读取和写入XML文件。当编写带有必须在xml上下文中转义的“特殊”字符的元素内容时,就像将"&“写为&一样,我不必关心这一点,因为MSXML会进行这种转换。这意味着,如果我将一个文本赋给一个元素,例如oXMLElement.Text = "1 & 2",那么当我创建XML文件时,MSXML实际上会写入oXMLElement.Text = 1 & 2。这很好,为我省去了一些工作。
现在,我想要做的是自动“去掩码”XML字符串。因此,我使用selectNodes-method读取XML文件,它的工作方式是添加一条XPath语句,例如//ns:element/text()。不幸的是,我得到的结果字符串看起来像1 & 2,而不像1 & 2。有没有办法告诉MSXML-object或XPath-statement给我一个“去屏蔽”字符串?我正在使用带有ObjectPal / Paradox的MSXML,所以最好的解决方案是MSXML库中的一个方法或者一个“特殊的”XPath语句。
发布于 2013-03-18 21:52:10
您看到的是文本的“转义”XML表示法。这就是使用.xml属性检索字符串时应该看到的内容。
要获得不带转义的字符串,请使用.nodeValue。
https://stackoverflow.com/questions/15476422
复制相似问题