我们在开发过程中,经常要维护XML文件,有的可能是手工维护,这样就涉及到XML文档正确性的问题,如果有人在添加节点的时候,不小心漏掉了结束节点、少打了个“<”等等,如果XML文件足够大,人为校验显然是不合适的,那么验证XML文档是否规范,最懒的办法,就是用DOM去Load这个文档,看看有没有Catch,这样虽然可以达到验证文档是否正确的目的,但是错误信息不够详细,今天我介绍一下如何利用XmlReader来验证XML文档的正确性
首先,关于XmlReader以及XmlReaderSettings的介绍可以参考MSDN
XmlReader(http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx)
XmlReaderSettings(http://msdn.microsoft.com/en-us/library/system.xml.xmlreadersettings.aspx)
其实方法很简单,就是让Reader不停的去读取XML文档,然后在ValidationEventHandler事件中,根据ValidationEventArgs中的Severity属性来判断是Warning还是Error
具体代码如下
TestXmlReader.Designer.cs