gpt4 book ai didi

android - 如何/何时使用 XmlPullParser.require() 方法

转载 作者:行者123 更新时间:2023-11-30 01:03:40 26 4
gpt4 key购买 nike

Android 新手免责声明:我是 Android 新手,请放轻松。

我正在努力理解 Android's Parsing XML Data例如,特别是他们对 parser.require() 的使用 - 在“阅读提要”标题下。

是的,我读过the documentation for XmlPullParser .我一定是个白痴,因为我无法理解它。

我也在这些 SO 论坛上搜索过,但没有成功找到我可以亲自解析的答案:-)

好的,所以如果不满足传入的参数,它会抛出异常。当它似乎仅应用于单个元素时,它对我有何帮助?

我怎么知道要将哪些参数传递给该方法?

总是有必要吗?还是只是偶尔?为什么?

我是否应该在解析 XML 时使用此方法?在哪里?为什么?

他们的示例似乎是在 XML 提要的开头处理“feed”标签,但他们似乎没有处理紧随其后的“title”标签。为什么他们会声明“feed”标签而不是下面的“title”标签?

我的天啊,我很困惑。

我对 Android 开发的挫败感越来越强烈,这个小问题快要让我崩溃了。如果有人可以简单地向我解释为什么使用 .require() 方法,以及在适当的时候,我将永远感激不已。

我没有自己的示例代码可以发布在这里,因为我所做的只是阅读并尝试理解示例代码。

在此先感谢所有尝试帮助我的人。

最佳答案

在发布这个问题后,我想我明白了 .require() 是如何工作的。从 developers.android.com 获取以下代码 fragment :

parser.require(XmlPullParser.START_TAG, ns, "feed");
while (parser.next() != XmlPullParser.END_TAG) {
if (parser.getEventType() != XmlPullParser.START_TAG) {
continue;
}
String name = parser.getName();
// Starts by looking for the entry tag
if (name.equals("entry")) {
entries.add(readEntry(parser));
} else {
skip(parser);
}
}

...我要从这里得到的是,通过使用 .require() 我们将光标设置到“feed”元素的 START_TAG - 顶级元素 - 然后我们可以进入循环直到我们最终到达我们最初排队的提要元素的 END_TAG !

因此,.require() 不仅验证 xml 元素的入口点,而且还通知解析器您正在输入哪个元素,以便您可以遍历它,直到您点击该特定元素的结束标记。

比我认为的更容易理解 - 对最初发牢骚的帖子感到抱歉!

关于android - 如何/何时使用 XmlPullParser.require() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39130409/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com