开发者

xml parsing using xmltextreader

I am parsing some xml entries using the xmltextreader and looking for the elements I need by using different textreaders for each in a different loop as follows:

Dim treader As XmlTextReader = New XmlTextReader(New StringReader(item.ToString))
                While treader.Read
                    If treader.Name = "summary" Then
                        content = treader.ReadElementContentAsString
                        If String.IsNullOrEmpty(content) Then
                            content = "NOTHING"
                            Continue While
                        End If
                        contentList.Add(content)
                        Exit While

                    End If
                End While

and I do the same for each element I am looking for. Now the problem arises when I get the results for each. I use an arraylist for each element and at times I will h开发者_运维百科ave an unequal amount like 100 for summary, 100 for title , 99 for id etc... is there a more efficient way of doing this by checking the entry if all the nodes are there and then just skipping it if it's not.

<entry>
 <summary>
 <id>
 <published>
 <uri>
 <rule>
</entry>


I would make an entry object and deserialize the xml as a list of entry objects. That would open the door to linq and for each loops. Check out the XmlSerializer Class. I hope your data doesn't have 99 ids and 100 of some other field.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜