我有一个XML文件,其中包含一些转义字符。当我试图在VB中使用xpathdocument类读取时,我正在解析为“The'<'字符,十六进制值0x3C,不能包含在名称中。行#,位置#。“
如何在将该xml文件传递给xpathdocument之前替换该转义字符? xml文件是:
<classes>
<class>Class&</class>
<name>.net></name>
</classes>
答案 0 :(得分:1)
如果不了解完整的背景,就无法回答你的问题。可能<
有效,但<
之前出现的内容是问题的根本原因。
最好的做法是返回到获取XML文件的位置并请求语法正确的替换。
W3C有一个XML Validator,它对于查找XML错误非常有用。
答案 1 :(得分:0)
我同意,最好的解决方案是获得一个合适的文件,但是,有时候这很困难。
我有一个客户,我必须首先将他们的XML文件作为文本文件逐行浏览,然后对转义符进行替换。只有这样我才把它加载到我的XML文档中。有效。 这不是理想的,如果XML文件很大或者会发生很大变化,会导致其他问题。 (如果有人出现在你身后,你需要维护你的代码。但它可能会有用。)希望这会有所帮助,但请记住,如果你这样做,如果你没有考虑到所有这些,你将面临运行时错误的风险您将在xml文件中遇到的场景。