仅捕获XmlException中的字符编码问题

时间:2011-08-29 09:40:03

标签: c# xml string character-encoding xmlexception

我正在使用System.Xml来解析xml文档。有时,xml文档包含不可编码的字符,然后会抛出XmlException。在这些情况下,我想重新使用强制编码解析文档,如下所示:

try {
    var doc = new XmlDocument();
    doc.Load()
} catch (XmlException xe) {
    // Retry here with another encoding..
}

这很好用,除了针对所有类型的xml问题都会抛出XmlException,即使是那些不是由字符编码问题引起的问题。在这些情况下,我不想重试解析。那么有没有办法弄清楚XmlException是由字符编码问题引起的呢?

2 个答案:

答案 0 :(得分:0)

我不确切地知道异常是什么样的,但通过检查xe.Messagexe.InnerException的内容,你可以确定异常的类型吗?

答案 1 :(得分:0)

我猜答案是否定的,没有办法可以有力地找出导致XmlException的原因。