Aplicación XMLParser
El siguiente ejemplo muestra una aplicación que se conecta a una página web donde se encuentra un documento xml, el cual es parseado. El resultado de los nodos leídos, se muestran en un listview.
Interfaces
En la primera imagen se muestra la interfaz principal de nuestra aplicación. Consta de dos botones: Parsear y Mostrar. Cuando el usuario pulsa Parsear, la aplicación parsea el documento xml y muestra los nodos en un listview (imagen 3). Cuando el usuario pulsa Mostrar, la aplicación muestra en la misma interfaz el documento xml a parsear.
Pantalla principal | Tras pulsar el botón Mostar | Tras pulsar el botón Parsear |
---|---|---|
![]() |
![]() |
![]() |
Documento xml a parsear
El documento xml a parsear es prueba_parsear.xml, el cual está almacenado en nuestro hosting.
El objetivo es obtener para cada uno de los productos los valores asociados a los nodos id, nombre, cantidad, descripción y precio.
El esquema sería el siguiente:
<productos> <producto> <id> </id> <nombre> </nombre> <cantidad> </cantidad> <descripcion> </descripcion> <precio> </precio> </producto> <producto> <id> </id> <nombre> </nombre> <cantidad> </cantidad> <descripcion> </descripcion> <precio> </precio> </producto> </productos>
Código fuente
Puedes descargarte el código fuente de este programa XMLParser.tar.
Conociendo la aplicación XMLParser
- Conectamos con la url
- Parseamos el documento xml
- Mostramos los nodos en un listview
- Diseño de las interfaces
Estructura de ficheros
Directorio | Ficheros | Descripcion |
---|---|---|
XMLParser/src/ com.example.XMLParser | XMLParser.java | Clase principal |
Resultado_parsear.java | Listado de los nodos parseados | |
Adapatador_xml.java | Clase extiende a ArrayAdapter | |
Modelo_xml.java | Definición de los nodos del xml | |
Producto_parsear.java | Clase extiende a DefaultHandler | |
XMLParser/res/drawable | invierno.png | Icono de producto de invierno |
verano.png | Icono de producto de verano | |
vacio.png | Icono vacio | |
XMLParser/res/layout | activity_xml_parser.xml | Layout de la ventana principal |
listado_annexo.xml | Layout del listview | |
listado_resultado.xml | Layout del resultado del parser | |
XMLParser/res/menu | xml_parser.xml | Menu principal |
XMLParser/res/values | strings.xml | Definición de cadenas de texto |
colors.xml | Definición de colores | |
styles.xml | Definición de estilos | |
dimens.xml | Definición de márgenes | |
XMLParser/ | AndroidManifest.xml | Declaración principal de la aplicación |