android getElementsByTagName 返回空列表

标签 android xml parsing

我发现我认为在 Android 平板电脑的 Android 3.x (Gingerbread) 中有一些奇怪的行为。我已经能够在 Galaxy 选项卡和模拟器上重现该问题。

运行精确代码的其他版本的操作系统工作正常。详情如下:

Document dom = db.parse(new InputSource(new StringReader(response)));
Element root = dom.getDocumentElement();
NodeList items = root.getElementsByTagName("root");  // this is the     org.w3c.dom.Element.getElementsByTagName

items.getLength()  >>>> is Always 0 on Android 3.x

但返回所有其他版本 2.1 及更高版本(显然不包括 3.x 版本)的预期列表计数。

正在解析的 xml 是:

xml sample

逐字逐句!同样,相同的源代码在 Android 2.1、2.2、2.3 和 4.0 版本上运行良好,但在 3.0 或 3.1 版本上运行不正常

任何建议、解释或解决方案都将不胜感激!

最佳答案

没有人 - 真的!

我发现了一种适用于所有 Android 版本的一致方法。需要注意的是,它需要您开发自己的 xpath 类: http://developer.android.com/reference/org/xmlpull/v1/XmlPullParserFactory.html

我将继续寻找适用于所有版本的 Android 操作系统的 xpath 解决方案。如果我找到它,我会更新这个线程。

干杯 Android 瘾君子

关于android getElementsByTagName 返回空列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8919553/

相关文章:

Android(java) 相当于 NSString stringByAddingPercentEscapesUsingEncoding :?

java - android xml属性android :onClick ="..." work behind the scenes?怎么办

parsing - 通过URL解析(如WhatsApp,Viber,Skype)制作漂亮的代码段

java - Android 中的 Firebase 事件离线和在线日志记录

android - Required 定义 null 局部变量并稍后在方法中设置它时没有错误

java - 使用函数更改位图颜色

javascript - 如何使用 Word JS API 删除插入的 OOXML 注释?

java - XMLBeans inst2xsd 内存不足错误

javascript - 在元素名称发生变化的循环中解析 json

ruby - 在 Ruby 中使用 Parslet 的缩进敏感解析器?