读取XML文件时出错

时间:2013-02-07 13:00:14

标签: c# asp.net xml vb.net

我需要读取一个XML文件,但在这种情况下它会跳过一些像“link”这样的元素,我放了一个断点,我发现当元素是链接时IsStartElement为false。 任何想法?

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>

1 个答案:

答案 0 :(得分:0)

您没有阅读结束元素。

它应该是(伪代码):

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

您错过了ReadEndElement以及对IsEmptyElement的检查。