Я использую несколько методов для анализа xml, с xpathnavigator, выражениями регулярных выражений и т. Д. Некоторые из типов синтаксического анализа. Однако сначала я удаляю xml-записи, используя string.split или xpathnavigator, xmldocument.load и т. Д .; но обнаружил, что если есть запись с плохим xml, это создает ошибку, и все файлы заносятся в черный список во временную папку. Я подумал, что буду использовать xmltextreader для чтения каждой записи и добавления ее в список, но когда я добираюсь до неверной записи, я не уверен, как просто проигнорировать эту запись и перейти к следующей записи в документе xml.
Пример кода:
Try
Dim ureader as XmlTextReader = New XmlTextReader(New StringBuilder(result))
While ureader.read
Try
If ureader.Name = "entry" then
page = ureader.ReadInnerXml
entriesList.add("<entry>" & page & "</entry>")
EndIf
Catch ex as exception
Continue While
End Try
End While
Catch ex as Exception
log.logError(ex.message.tostring)
End Try