1

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>
4

1 に答える 1

0

最後の要素を読みません。

それは(疑似コード)の行に沿ったものでなければなりません:

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

ReadEndElementと のチェックがありませんIsEmptyElement

于 2013-02-07T13:13:41.957 に答える