XML解析引发“&”和“ <”字符的异常

时间:2019-09-05 09:51:40

标签: c# xml linq-to-xml

如果XML包含'&'和'<'字符,则在解析XML时获取异常。我曾在某处读到过,这些字符包含在XML中意味着XML无效,但是我是从无法重新格式化的第三方收到的。

下面是我使用XDocument进行XML解析的代码:

string data = profile.Content.ReadAsStringAsync().Result; //Read input
XDocument doc = new XDocument();
if (data != "")
   {
       string rawHtml = WebUtility.HtmlDecode(data);
       doc = XDocument.Parse(rawHtml); //Parse input into XDocument
   }

此处,数据包含实际的XML输入而不是XML文件路径。 请建议我如何处理这些特殊字符。

1 个答案:

答案 0 :(得分:1)

此数据不是XML。

检查您与第三方达成的协议。

如果合同要交换XML数据,那么它们将无法满足合同,因此您应该按照与供应商的其他任何有缺陷的货物的处理方式来处理它:将其退回并索回您的钱。

如果协议未指定他们将向您发送XML,则您不应尝试使用XML解析器对其进行解析。