0
<item>
    <RelatedPersons>
        <RelatedPerson>
            <Name>xy</Name>
            <Title>asd</Title>
            <Address>abc</Address>
        </RelatedPerson>
        <RelatedPerson>
            <Name>xy</Name>
            <Title>asd</Title>
            <Address>abc</Address>
        </RelatedPerson>
    </RelatedPersons>
</item>

我想用 SAXParser 解析这些数据。我怎样才能做到这一点?我知道有关 SAX 的教程,我可以解析任何普通的 RSS,但我不能只解析这些数据。

4

1 回答 1

1

定义您的问题:您可以做的是创建一个名为的值对象(PO​​JO)Person,它具有以下属性nametitleaddress。然后,您解析此 XML 的目标是创建一个ArrayList<Person>对象。定义明确的数据结构有助于您围绕它构建逻辑。

选择解析器:然后您可以使用SAX解析器或 XML 拉解析器来浏览标签:请参阅此 lin 以获取有关 Android 中 DOM、SAX 和 XML 拉解析器的教程

数据填充逻辑:然后在解析时,每当遇到<RelatedPersons>标签时,实例化一个新Person对象。当您遇到相应的 Properties 标记时,读取该值并将其填充到此对象中。当您在 ArrayList 中遇到关闭</RelatedPersons>转储此 Person 对象时。根据您使用的解析器,您必须使用适当的方法来浏览到子节点/嵌套节点。(有关详细信息,请参阅链接)

当您完成解析最后一个项目节点时,您将拥有 ArrayList 中的所有值。

请注意,这更多是理论上的答案;我希望它有所帮助。

于 2011-03-26T13:28:42.993 回答