PDA

Ver la Versión Completa : Android XMLs


freiren
29/11/12, 23:09:10
Hola a todos,
Tengo una duda acerca de ficheros XML en Android y su visualización las diferentes layouts.
La cosa es que tengo un gran número de ficheros XML con varios campos y subcampos dentro de estos (ej: pregunta=Cuantos..?, nºpregunta=1, respuesta A: uno, respuesta B:2, etc.) y no se si con Android directamente podría obtener todos los valores del mismo tipo e ir introduciendolos en arrays o por el contrario para realizar esto primero tendría que parsear los diferentes XML.
Otra opción que barajo sería la de mediante estos XMLs generar una base de datos con SQLite. Lo que ocurre es que al ser XML una base de datos jerárquica y sql relacional no sabría como realizarlo.

Un saludo y gracias

kriogeN
29/11/12, 23:40:14
Puedes hacerlo de las 2 maneras, aunque yo creo que es mucho mejor la solución del SQLite.

Para la solución con los XML, obviamente tienes que recorrer todos los ficheros, parsearlos e ir introduciendo los datos en estructuras de datos en memoria.

Para genera el fichero SQLite, puedes hacer mas o menos lo mismo, parsear todos los ficheros e ir introduciendo los datos en las tablas SQLite.

Con el primer método tendrías que recorrer los ficheros XML cada vez que abrieses el programa, mientras que con la segunda solución sólo tendrías que hacerlo la primera vez. Además te da juego a colgar en alguna web los ficheros XML e ir actualizando la base de datos SQLite con alguna opción en el programa, con lo cual podrías de vez en cuando colgar preguntas nuevas con sus respuestas y que los usuarios se fuesen actualizando.

freiren
30/11/12, 10:31:25
Gracias por la aclaración. El problema, aunque no lo haya dicho, es que dentro de estos XML hay adjuntos archivos .wav y .txt por lo que en ese caso no se si será mejor emplear sqlite.

Un saludo y gracias

kriogeN
30/11/12, 12:18:01
Gracias por la aclaración. El problema, aunque no lo haya dicho, es que dentro de estos XML hay adjuntos archivos .wav y .txt por lo que en ese caso no se si será mejor emplear sqlite.

Un saludo y gracias

¿Te refieres a un enlace o en formato Base64?

Sea como sea, aún así, podrías seguir haciéndolo. Aunque me parece mucha mejor solución el SQLite.

freiren
01/12/12, 12:41:56
Gracias de nuevo, me refiero al tener un enlace en la base de datos con un link a resources/raw donde se encontrarán todos los archivos de sonido y que se deberán reproducir.
Un saludo y gracias

oscar8x
05/12/12, 23:37:20
Gracias de nuevo, me refiero al tener un enlace en la base de datos con un link a resources/raw donde se encontrarán todos los archivos de sonido y que se deberán reproducir.
Un saludo y gracias

Pero al parsear el XML y volcarlo al SQLlite guardas la misma ruta de los ficheros del XML en un campo de la BD.