我在将一些字符串附加到某些 XML 节点时遇到问题。为了更好地解释这一点,我做了一个简单的例子......想象一下我有这个 XML 代码:
<song>
<title>
Surfin' USA
</title>
</song>
请注意,我明确使用'
的不是单引号字符,而是简单地写“Surfin' USA”。XML 代码是有效的——或者至少我在网上找到并测试过的一些工具认为它是有效的。
我的问题是,当我尝试将该字符串放入 XmlText 对象时,这样:
Dim xmlDoc As New XmlDocument()
Dim xmlMyText As XmlText
xmlMyText = xmlDoc.CreateTextNode("Surfin' USA")
我希望在 XmlText 对象中具有完全相同的字符串值,但它得到的值略有不同:
MsgBox(xmlMyText.OuterXml) ' OUTPUTS: Surfin&39; USA
简而言之,&符号被转换为&
因为AFAIK“&符号不能不转义”。但在我看来,在这种情况下它不是未转义的,因为它与 #39 和分号一起使用,我错了吗?
您能帮我解释一下如何避免这种转换吗?
非常感谢您的时间和帮助