第三方给的xml文件,包含特殊字符,现在我加载xml文件或者xml字符串就直接报错了。有什么办法把这些特殊字符提取出来吗?一经采用50元红包送上。
可以试着替换。因为XML特殊字符就那几个(如 <, >, &,单引号,双引号)。我感觉你自己可以预定义一个规则,先把XML当做普通字符串处理:
string xml="<a>1&2</a>";
//你自己预定一个一个规则,例如 & 用{$} 代替, < 用{$$} 代替, > 用{$$$} 代替 ,然后替换
xml=xml.replace("&","{$}").replace("<","{$$}")
然后再加载XML到 xmlDocument
最后,在显示时,在replace("{$$}","<") 还原替换的字符
见:xml转义字符
让对方提供正确格式的xml。特殊符号不转义处理本身就是无效的xml。