/ / XmlPullParser - Ako preskočiť na zhodu END_TAG? - xml, xml-parsing, xmlpullparser

XmlPullParser - Ako preskočiť na prispôsobenieEND_TAG? - xml, xml-parsovanie, xmlpullparser

<root>
<element> <!-- When this is encountered... -->
<element>text</element>
<element>text</element>
<element>
<element>text</element>
</element>
<element>
<element> <!-- ...skip to here. -->
<element>text</element>
<element>text</element>
<element>
<element>text</element>
</element>
<element>
</root>

Vnútorné značky môžu mať rovnaký názov ako vonkajšie značky. V tomto prípade sa všetci volajú element.

V podstate, ak mám nejaké START_TAG Chcem preskočiť na zodpovedajúce END_TAG a pokračujte v analýze od nasledujúceho START_TAG v rovnakej hĺbke.

odpovede:

2 pre odpoveď č. 1

Na webovej stránke pre vývojárov systému Android sa našiel úryvok.

 private void skip(XmlPullParser parser) throws XmlPullParserException, IOException {
if (parser.getEventType() != XmlPullParser.START_TAG) {
throw new IllegalStateException();
}
int depth = 1;
while (depth != 0) {
switch (parser.next()) {
case XmlPullParser.END_TAG:
depth--;
break;
case XmlPullParser.START_TAG:
depth++;
break;
}
}
}