您好,我在这里提出的第二个问题,请保持温柔:)
我仍在学习java和android,我在我的小项目中学习它,但是碰到了逻辑上的障碍。
我有XML文件
<shift_plan>
<plan>
<agent data="John Smith"/>
<date data="6 Jan"/>
<shift data="M-3"/>
</plan>
<plan>
<agent data="John Smith"/>
<date data="7 Jan"/>
<shift data="M-3"/>
</plan>
<plan>
<agent data="John Smith"/>
<date data="8 Jan"/>
<shift data="M-3"/>
</plan>
</shift_plan>
在网络上,我想做一个循环,将每个数据粘贴到将其放入db的函数中。我有功能和工作的数据库,所以它看起来像updateBD(agent,date,shift),但是我将如何解析xml却要解析3个变量,而不是将它们放入该函数中,然后再进行下3个等等。 ..直到xml结束
我知道我可能没有太多道理,我敢肯定这很简单,但我确实需要朝正确的方向踢。
感谢您的回答,
弗拉德
最佳答案
Android立即支持XmlPullParser API。这是在Android应用程序中解析XML文档的绝佳解决方案,因为您可以立即开始从文档中提取信息(它是流XML解析器),并且它的pull-style API比推式流更易于使用。 XML解析器仅需要将文档解析为对象即可。
我不确定在Android 3和4中是否仍然如此,但是Android 2.3.x和XmlPullParser
的早期实现(来自Apache Harmony项目)不支持getPrefix()
或getAttributePrefix(int index)
。但是,这不会影响您,因为您没有使用XML名称空间。
编辑:检查与platform_frameworks_base标记相对应的git树,看来Android 3.2.4和更早版本具有Harmony项目的XmlPullParser实现,而从Android 4.0开始,实现切换为kXML2。