0

VB / C# 我试图解析包含特殊字符的 XML 文件,

replace & with &amp
' with &apos
< with &lt
> with &gt

字符串替换没有替换标签中的特殊字符“<”、“>”。我尝试捕获当同一行中有多个特殊字符时不起作用的 XML 异常,如果一行中只有一个特殊字符,它就可以工作。MS 内置方法 SecurityElement.Escape 不起作用,这必须在附加 XML 标记之前完成。

我使用这个文件来加载一个 SQL 表。

处理 XML 多个特殊字符的任何其他解决方案?

4

3 回答 3

1

使用 System.Security.SecurityElement.Escape 例如:string XmlFriendly = System.Security.SecurityElement.Escape("the bad 'string");

于 2015-05-15T06:39:59.237 回答
0

如果我正确理解了这个问题,那么您不是在尝试处理 XML 文件,而是在尝试处理非 XML 文件,如果特殊字符被正确转义,则该文件将是 XML 文件。

那么问题来了,这个非 XML 文件是从哪里来的呢?因为修复它的最佳方法是修复创建它的过程。创建坏的 XML 然后修复它比一开始就创建好的 XML 要困难得多。

于 2012-06-27T16:59:30.750 回答
0

你为什么不使用XmlTextReader?它应该处理所有的转义。

于 2012-06-27T15:23:20.297 回答