Xml extraer elementos del analizador xml

¿Cómo puedo analizar un archivo XML local en la carpeta de activos utilizando analizador de trazo? No puedo obtener analizador de tracción para trabajar. Siempre lanza una excepción. Creo que no puedo conseguir la trayectoria al archivo, o conectar con el archivo.

Mezcla

Estaba jugando con varias maneras de cargar un archivo local de 'bienes' y 'res', pero para responder a su pregunta como se le preguntó (como nadie más parece tener):

En primer lugar, asegúrese de que su XML es válido antes de probar o desactivar la validación, así es como puede hacer eso e instanciar un analizador de tracción al mismo tiempo:

try { XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); factory.setValidating(false); XmlPullParser myxml = factory.newPullParser(); 

A continuación, abra el archivo xml y establezca como entrada para su analizador de extracción:

  InputStream raw = getApplicationContext().getAssets().open("simple.xml"); myxml.setInput(raw, null); 

Ahora la configuración de su bucle de tiro (u otro, depende de si desea hacer tirón diferido o no, que es sus decisiones de diseño:

  int eventType = myxml.getEventType(); while(eventType != XmlPullParser.END_DOCUMENT) { if(eventType == XmlPullParser.START_DOCUMENT) { Log.d(MY_DEBUG_TAG, "In start document"); } else if(eventType == XmlPullParser.START_TAG) { Log.d(MY_DEBUG_TAG, "In start tag = "+myxml.getName()); } else if(eventType == XmlPullParser.END_TAG) { Log.d(MY_DEBUG_TAG, "In end tag = "+myxml.getName()); } else if(eventType == XmlPullParser.TEXT) { Log.d(MY_DEBUG_TAG, "Have text = "+myxml.getText()); } eventType = myxml.next(); } } catch (XmlPullParserException e) { 

Tenga en cuenta el myxml.getEventType() , tiene que hacer esto para obtener el parse y manejar qué tipo de eventos que está tirando. Nota: los bloques de captura se omitieron para facilitar la lectura.

Probado lo anterior en 2.1, espero que ayuda -Frank

  • Parser SAX vs analizador XMLPull
  • Xml getText devolver null - Android
  • XmlPullParser obtener nodos secundarios
  • Android: El mejor analizador para analizar datos XML
  • XmlPullParserException al analizar un archivo de recursos en Android
  • ¿Por qué Android XmlPullParser REALMENTE lento en mi dispositivo más antiguo?
  • Error desconocido en xpath (utilizando xmlpullparser)
  • Net.sqlcipher.database.SQLiteException: no es un error:
  • XmlPullParser no funciona con InputStream
  • XmlPullParser - token inesperado (android)
  • Android org.xmlpull.v1.XmlPullParserException al analizar XML
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.