C#学习教程:如何阻止XMLReader抛出无效的XML字符exception分享


如何阻止XMLReader抛出无效的XML字符exception

所以我有一些XML:

my tagmy tag value and my invalid Character

和XMLReader:

 using (XmlReader reader = XmlReader.Create(new StringReader(xml))) { while (reader.Read()) { //do my thing } } 

我已经从这里实现了CleanInvalidCharacters方法,但由于“&#xB”尚未编码,因此不会被删除。

读者错误正在抛出.Read(); 有exception的行:

hex值0x0B,是无效字符。

问题是你没有XML – 你有一些确定看起来像XML的字符串,但遗憾的是它并不真正合格。 幸运的是,你可以告诉XmlReader更宽松:

 using (XmlReader reader = XmlReader.Create(new StringReader(xml), new XmlReaderSettings { CheckCharacters = false })) { while (reader.Read()) { //do my thing } } 

请注意,您仍将使用XML,在序列化时,可能会产生更深层次的问题,因此您可能希望在阅读后随后过滤掉字符。

上述就是C#学习教程:如何阻止XMLReader抛出无效的XML字符exception分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/959830.html

发表评论

邮箱地址不会被公开。 必填项已用*标注