读取XML文件时出错

本文关键字:出错 文件 XML 读取 | 更新日期: 2023-09-27 17:58:22

我需要读取一个XML文件,但它跳过了一些元素,比如"link"。在这种情况下,我放置了一个断点,发现IsStartElement为false,而元素为link。有什么想法吗?

Dim reader As XmlReader = XmlReader.Create(New StringReader(Xml), settings)
While reader.Read()
    If reader.IsStartElement Then
        Select Case reader.Name
            Case "title"
                title = reader.ReadElementContentAsString()
            Case "link"
                link= reader.ReadElementContentAsString()
        End Select
    End If
End While

XML文件

<title> title   1 </title>
<link>link 1 </link>

读取XML文件时出错

您不读取结束元素。

它应该是类似(伪代码)的东西:

if not reader.IsEmptyElement
    reader.ReadStartElement()
    value = reader.ReadContentAsSomething()
    reader.ReadEndElement()
else 
    reader.Skip()

您缺少ReadEndElementIsEmptyElement的检查。