我有一个xml文件,如:
<xml>
<userlist sub='A'>
<user id='1'>Daan</user>
<user id='2'>Maarten</user>
<user id='3'>Wannes</user>
<user id='4'>Kobe</user>
...
</userlist>
<userlist sub='B'>
<user id='5'>Fien</user>
<user id='6'>Lisa</user>
<user id='7'>Charlot</user>
<user id='8'>Agnes</user>
...
</userlist>
<userdata>
<userd id='1'>
<phone>0123498519</phone>
<genre>M</genre>
...
</userd>
<userd id='2'>
<phone>0123958519</phone>
<genre>M</genre>
...
</userd>
<userd id='3'>
<phone>0143488569</phone>
<genre>M</genre>
...
</userd>
...
</userdata>
</xml>
现在我使用此代码获取用户列表
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
Document XmlCode = documentBuilder.parse(database);
XmlCode.getDocumentElement().normalize();
NodeList nodeList = XmlCode.getElementsByTagName("userlist");
但现在我获得了所有<user>
个元素,如何只选择其中sub为'A'的<userlist>
?
如何选择ID为“3”的用户的电话号码?
答案 0 :(得分:0)
您解析xml并将其构建为适合您的应用程序的数据结构,该数据结构可能是内存数据结构,也可能是您随后查询的SQLite数据库。你永远不会在任何语言或任何平台上对原始xml进行那种操作 - 它的效率非常低。