Foros del Web » Programando para Internet » Android »

Se vacía fichero XML al abrir app

Estas en el tema de Se vacía fichero XML al abrir app en el foro de Android en Foros del Web. Buenas, Tengo un problema que por más que piense y busque, no doy con la solución. Estoy haciendo una app que genera un fichero XML ...
  #1 (permalink)  
Antiguo 07/11/2013, 08:46
 
Fecha de Ingreso: julio-2011
Mensajes: 62
Antigüedad: 13 años, 4 meses
Puntos: 2
Se vacía fichero XML al abrir app

Buenas,

Tengo un problema que por más que piense y busque, no doy con la solución.

Estoy haciendo una app que genera un fichero XML antes de ponerse en pausa. Para ello uso XML.newSerializer() como mostraré a continuación. Tras cerrar la app, miro con un explorador de archivos el fichero y todo está perfecto, cada etiqueta en su sitio, todo cerrado bien, etc. Pero al volver a abrir la app, el fichero se queda casi vacío, sólo con un pobre "<posiciones />". (la app no vuelve a abrir/tocar el fichero después de generarlo)
Código Java:
Ver original
  1. //recibe HashMap<String, Coordenadas> c
  2. FileOutputStream fout = actividad.openFileOutput(nombreFichero, Activity.MODE_PRIVATE);
  3. XmlSerializer serializer = Xml.newSerializer();
  4. serializer.setOutput(fout, "UTF-8");
  5. serializer.startDocument(null, true);
  6. serializer.setFeature("http://xmlpull.org/v1/doc/features.html#indent-output", true);
  7. serializer.startTag(null, "raiz");
  8. for(String nombre: c.keySet()){
  9.   serializer.startTag(null, "coordenadas");
  10.   serializer.attribute(null, "nombre", nombre);
  11.   serializer.startTag(null, "latitud");           serializer.text(Long.toString(Double.doubleToRawLongBits(c.get(nombre).getLatitud())));
  12.   serializer.endTag(null, "latitud");
  13.   serializer.startTag(null, "longitud");
  14.   serializer.text(Long.toString(Double.doubleToRawLongBits(c.get(nombre).getLongitud())));
  15.   serializer.endTag(null, "longitud");
  16.   serializer.endTag(null, "coordenadas");
  17. }
  18. serializer.endTag(null, "raiz");
  19. serializer.endDocument();
  20. serializer.flush();

Todo esta en try{}...catch(Exception e){ ... Toast.makeText(...e.getMessage()...)...}finally{ fout.close() } y NO salta ninguna excepción.

¿Tiene alguien alguna idea de lo que está pasando y cómo se puede resolver?

Muchas gracias de antemano

Etiquetas: app, vacio, xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:24.