Eliminación del contenido del archivo android
Necesito eliminar el contenido de un archivo, antes de escribir más información en él. He intentado diferentes maneras, como por ejemplo, donde elimino el contenido pero el archivo permanece del mismo tamaño, y cuando empiezo a escribir en él después de la eliminación, un agujero en blanco parece ser el tamaño de la eliminación antes de escribir mis nuevos datos .
Esto es lo que he intentado …
- Repetir la llamada API con retrofit y rxjava
- NoClassDefFoundError cuando uso lambda para recorrer String array
- Manejo de eventos de aplicaciones de Android
- Cómo convertir cursorLoader en Loader <Object>
- No se han podido leer los descriptores de los archivos de entrada desde el paquete
BufferedWriter bw; try { bw = new BufferedWriter(new FileWriter(path)); bw.write(""); bw.close(); } catch (IOException e) { e.printStackTrace(); }
Y también he intentado esto …
File f = new File(file); FileWriter fw; try { fw = new FileWriter(f,false); fw.write(""); } catch (IOException e) { e.printStackTrace(); }
¿Puede alguien por favor me ayude con una solución a este problema.
- Recortar o reemplazar todas las comas y espacios de la cadena
- Enviar texto a través de Bluetooth desde Java Server a Android Client
- Manejo multitouch en libgdx
- Android: el relleno dejó un mapa de bits con color blanco
- Gradle: Cómo crear dos aplicaciones para cada sabor con diferentes carpetas de activos:
- Android googleMap Mapa no muestra, sólo la cuadrícula, a veces
- ¿Cómo crear un servicio de fondo siempre en ejecución?
- ArrayList <CustomClass> en SharedPreferences
FileWriter (path, false)
El false le dirá al escritor que trunque el archivo en lugar de anexarlo a él.
Intente llamar a flush()
antes de llamar a close()
.
FileWriter writer = null; try { writer = ... // initialize a writer writer.write(""); writer.flush(); // flush the stream } catch (IOException e) { // do something with exception } finally { if (writer != null) { writer.close(); } }
Puede ser porque no está cerrando el FileWriter, fw.close (); También usted no necesita "suprimir" los datos viejos, apenas comienza a escribir y sobrescribirá los datos viejos. Así que asegúrese de que está cerrando por todas partes.
Esto funciona para mí:
File f=new File(file); FileWriter fw; try { fw = new FileWriter(f); fw.write(""); fw.close(); } catch (IOException e) { e.printStackTrace(); }
- Cómo hacer que Volley NetworkImageView funcione sin conexión
- Crear un servicio programado en android