【发布时间】:2016-12-08 11:48:35
【问题描述】:
...特别是 xA3 (£, £, £)
我正在加载几个长的 XML 文档,并且会定期遇到一个无法加载的文档,并引发异常:
给定编码中的无效字符。行 x,位置 y。
这是有问题的代码:
var doc = new XmlDocument();
doc.Load(file.FullName);
当我在指定的行查看相关文档时,我会看到其中一个 XML 标记内的 xA3 格式相反(黑色 bg,白色 fg)。
每个 XML 文件的头部都没什么特别的:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
这听起来像是一个非常愚蠢的问题,但有没有办法删除违规字符或告诉读取文件的 XMLDocument 接受字符编码?
【问题讨论】:
-
看看Escape invalid XML characters in C# 和XML (de)serialization invalid string inconsistent in c#?。话虽如此,
&#xa3是一个完全有效的 XML 字符。你能告诉minimal reproducible example 这个异常是如何产生的吗?