Weg, um XML (org.w3c.Document) auf Android zu analysieren

Kann jemand mich auf eine Erklärung für oder erklären mir, wie kann ich leicht analysieren die XML und erhalten Werte eines w3c.Document auf Android mit nur Android OS Libs?

Ich habe versucht, eine Implementierung von dom4j zu verwenden, aber es ist sehr langsam 🙁

  • Android: java.lang.ClassCastException: android.widget.imageView kann nicht in android.widget.textView geworfen werden
  • Wie man untere Grenze in relativelayout hinzufügt
  • Was ist Charakter 0x1f?
  • Wie man 9 Knöpfe in 3 Reihen im androiden XML-Layout setzt?
  • Vermeidung von Datenverlust durch Unterbrechung beim Speichern von Dateien auf Android?
  • Wie bekomme ich RatingBar, um fünf Sterne zu zeigen
  • Android Hintergrund Bild in XML-Datei
  • Android.view.InflateException: Binäre XML-Datei Zeile # 12: Fehler beim Aufblasen der Klasse <unknown>
  • 3 Solutions collect form web for “Weg, um XML (org.w3c.Document) auf Android zu analysieren”

    Sie sollten die SAX-APIs definitiv verwenden. Android XML Parse API Stacks oben auf die normale Java SAX eins so meiner Meinung nach würde ich nur die normale Java SAX API verwenden und auf diese Weise erhalten Sie die Möglichkeit, Ihren Code als normales Java-Desktop-Projekt zu testen.

    XML-Parsing ist immer langsam und mit diesen SAX-Parsern ist so gut wie es bekommt (es sei denn, Sie schreiben einen benutzerdefinierten Parser aus dem Scratch). Wort der Beratung: Versuchen Sie, den String-Vergleich zu minimieren und versuchen Sie, Hasmaps anstelle von langen Ketten zu verwenden, wenn (token.isEqual (CONSTANT_TOKEN)) ;.

    Hier sind ein paar Beispiele für Java XML Parsing: http://java.sun.com/developer/codesamples/xml.html#sax

    Android-XML-API ist deklarativ, das Paradigma ist ein bisschen anders, so dass, wenn Sie sich entscheiden, mit dem zu gehen, bereit sein, ein paar Beispiele zu lesen, um seine Wege zu lernen.

    Schließlich, vielleicht vor 2 Monaten sah ich ein Diagramm Benchmarking DOM vs SAX vs Android XML API (Ich kann nicht ganz finden, die Link jetzt). Die Schlussfolgerung war, dass DOM bei weitem die langsamste und SAX war top aber nicht durch eine riesige Marge über Android XML-Implementierung.

    Hier ist ein Artikel auf Developer.com , der die Leistung der DOM-, SAX- und Pull-Parser auf Android vergleicht. Es fand den DOM-Parser bei weitem der langsamste, dann der Pull-Parser und der SAX-Parser am schnellsten in ihrem Test.

    Wenn du dabei bist, eine Menge Parsing in deiner Anwendung zu machen, lohnt es sich, die verschiedenen Optionen zu sehen, um zu sehen, welche Werke am besten für dich sind.

    Ich habe den XmlPullParser über XmlResourceParser und festgestellt, dass gut funktioniert und war einfach zu bedienen.

    Es funktioniert durch die XML-Rückkehr Ereignisse, die Ihnen sagen, was es dort gefunden wird.

    Wenn du es benutzt, wird dein Code so aussehen:

     XmlResourceParser parser = context.getResources().getXml(R.xml.myfile); try { int eventType = parser.getEventType(); while (eventType != XmlPullParser.END_DOCUMENT) { String name = null; switch (eventType){ case XmlPullParser.START_TAG: name = parser.getName().toLowerCase(); if (name.equals(SOME_TAG)) { for (int i = 0;i < parser.getAttributeCount();i++) { String attribute = parser.getAttributeName(i).toLowerCase(); if (attribute.equals("myattribute")) { String value = parser.getAttributeValue(i); } } } break; case XmlPullParser.END_TAG: name = parser.getName(); break; } eventType = parser.next(); } } catch (XmlPullParserException e) { throw new RuntimeException("Cannot parse XML"); } catch (IOException e) { throw new RuntimeException("Cannot parse XML"); } finally { parser.close(); } 

    Wenn Sie XML, das nicht aus einer Ressourcendatei ist, analysieren möchten, können Sie einen neuen XmlPullParser mit der XmlPullParserFactory Klasse XmlPullParserFactory und dann die setInput() Methode setInput() .

    Wir können auch XPath in Android XML Parsing Dinge ..

    Es ist nützlich, wenn Sie kommen, um viele Daten in Form eines Array zu analysieren.

    Überprüfen Sie diesen Link für XPath Tutorial beim Analysieren von XML Content aus Android.

    Genießen !!

    Das Android ist ein Google Android Fan-Website, Alles über Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.