Borrar un fichero con Java Febrero 26, 2008
Publicado por lineadecodigo en : Java , trackbackBorrar un fichero con Java es una actividad bastante sencilla, ya que mediante la clase File, la cual nos abstrae de la manipulación de ficheros, se nos ofrece un método para llevar a cabo tal cometido.
Lo primero que deberemos de hacer es instanciar una clase File. Para instanciar esta clase deberemos de pasar al constructor el nombre del fichero sobre el que queremos trabajar.
Para borrar el fichero deberemos de invocar el método .delete() de la clase File. En caso de que se pueda realizar el borrado del fichero, dicho método devolverá true. En caso contrario devolverá false. Es por ello que deberemos de controlar su respuesta.
if (fichero.delete()) else
Visualizar el ejemplo
|- Descargar el código
|- Descargar del SVN
|- Reportar un error del código
Articulos Similares:
- Borrar un directorio con Java
- Vaciar el contenido de un fichero mediante borrado y creación
- Renombrar un fichero con Java IO
- Borrar un fichero con ASP
- Crear un fichero en Java
Enviar entrada por email
|
Imprimir
| 20528 visitas





Comentarios»
Hola estoy intentanto borrar ficheros con el metodo delete() de la clase File, segun has indicado pero no los borra, siempre se va al else. ¿Por que puede ser? gracias
como puedo borrar un archivo no vacio
por o q entiendo ese es para borrar un archivo o carpeta vacios
osea unicos
pero si la carpeta tiene algo en su interior no me funciona
si pueden contestar
se los agradeceria mucho
Pues me pasa igual que a Alberto, siemrpe se va a al else, por queeeee, lo necesito para mi proyecto fin de carrera, voy guardando imagenes en una carpeta y si no las voy borrando, es un poco tonto XD
Jojojojo,
pos yo también estoy igual…. la función “delete” siempre devuelve “false”… y no se borra ná
Debe ser por algo del sistema operativo que lo impida, o que en ese momento el archivo este siendo utilizado, o que este protegido…creo que puede ser por cualquier cosa. El caso es que algunas veces me lo borra y otras no. Una solucion que yo he hecho es meter la función delete en un while para 1000 iteracciones; en la mayoria de los casos consigo que lo elimine aunque no lo asegura al 100%.
esta bien, solo que a lo mejor se les olvido agregar la ruta del archivo donde esta guardado.
Por ejemplo, yo tengo puesto:
String sFichero = “C:\\fichero.txt”;
y con eso borro correctamente el archivo fichero.txt
espero hayan podido solucionar su problema, yo igual lo estoy usando en mi proyecto de programacion…
saludos…
La solución de Alberto de las iteraciones, aunque no me gusta, la probaré y os contaré. En cambio, la solución de Max sí la he probado y no me funciona…. :’(
Este ejemplo aunque es muy simple funciona OK, podría complementarse para que verifique algunos detalles del archivo.
saludos a Linea de Codigo
vos qui ero aser una tarea del grado 5 del ondas x favor xD
Hola, estoy realizando una aplicacion donde genero archivos “temporales” que me sirven para obtener las salidas finales que deseo, pregunta..como podria borrar todos los archivos que esten en una carpeta?, por ejemplo..tengo la carpeta C:\\Archivos y dentro de ella un numero n de archivos,con diferentes formatos.txt, png.. y quiero en un momento dado borrar todo lo q haya en esa cargracias
por la ayuda
la funcion delete devuelve false si el archivo esta asociado a un stream no cerrado conprueven si tienen el archivo abierto y cierrenlo y deberia funcionar
[...] Para borrar un directorio en Java podemos utilizar el mismo código que para borrar un fichero. [...]
@ Marco,
Tienes el ejemplo para borrar un directorio que no esté vacío en Borrar un directorio con Java.
Espero que sea de tu ayuda.
Como ya han comentado otros usuarios, es problema de que el archivo esté abierto o no, o que no tengas permisos para modificarlo; en mi caso abro los archivos con InputStream y OutStream(según el caso), y para borrarlos debo cerrarlos con el método close. Una vez cerrados se borran perfectamente. Un saludo
EL problema posiblemente es el close no el delete, pase todo un dia intentando solucionar ese problema, existen muchas formas para abrir los archivos, en mi caso como leo linea por linea lo hice de la siguiente manera
primero que nada crean su fichero para facilitar las cosas declarenlo dentro de la clase principal.
String sFichero = “C:\\fichero.txt”;
File TextFile = new File(sFichero);
ahora el metodo donde capturamos los datos
public void escribeArchivo()
{
try
{
FileWriter TextOut = new FileWriter(TextFile, true);
TextOut.write(aqui va la variable o cadena que desean almacenar);
TextOut.close();//OJO SIN ESTA PARTE NO TE MARCA HERROR Y LOS DATOS SE CAPTURAN Y MUESTRAN CORRECTAMENTE PERO NO TE DEJARA ELIMINAR EL ARCHIVO
}catch (IOException e) {
e.printStackTrace();
}
}
AHORA LA PARTE DE LECTURA (LEE LINEA POR LINEA POR LINEA EN EL BLOCK DE NOTAS AVECES NO SE APRECIAN LOS SALTOS DE LINEA PERO SI HACEN EL ARCHIVO .DOC EN LUGAR DE .TXT SE DARAN CUENTA QUE INTERNAMENTE SI EXISTE EL SALTO
public void CargarDatos() {
BufferedReader entrada;
try {
entrada = new BufferedReader( new FileReader( aqui va el nombre de tu fichero ) );
String linea;
while(entrada.ready()){
linea = entrada.readLine();
entrada.close();//ES SUMAMENTE IMPORTANTE PARA PODER ELIMINAR UN ARCHIVO QUE SE CIERREN TODOS LOS CICLOS
}catch (IOException e) {
e.printStackTrace();
}
}
al momento que capturas los datos en un archivo
no olviden las librerias estas son las mas usuales
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.File;
import java.io.FileReader;
ESPERO QUE A ALGUNO LE RESUELVA SUS DUDAS…..
ups se me pasaba para eliminar el archivo simplemente se pondria
TextFile.delete();
dentro del metodo que vayan a querer que elimine el archivo….
me mandaron una chamba y codificar buscar y eliminar en archivos xfavor podria ayudarme…!!! si puedes enviar a mi correo bryan32_so@……. muchas gracias!!!
Buenas tardes! espero esten bien!! la verdad la funcion File.delete() si borra el fichero… pero tienen que tener en cuenta algo super importante!! cuiden que el fichero no lo este usando otra aplicacion y que ni siquiera este registrado dentro de la herramienta de desarrollo que esten usando. hagan un ejemplo con un fichero en el escritorio y denle la ruta al file:
File a=new File(C:/users/desktop/fichero.txt);
a.delete();
ojo: creen primero el fichero “fichero.txt”
correo: Diegoe_gamboa@hotmail.com
hola consulta como puedo borrar solo una palabra de txt usando java, gracias de antemano.
simplemente a los que no les borra es por que tiene un writer o un reader activo, para que pueda borrar tienen que poner
el objeto que estan unsando seguido del .close() y asi ya se puede borrar
hola, quisiera saber como crear un archivo y a la vez borrarle cosas a el….
Existen varias formas de crear el archivo! entre ellas usando la clase File… File a=new File(“path”); y luego usas la funcion a.createNewFile(); de ahi puedes usar otras clases que te ayudaran de acuerdo a tus necesidades como la clase FileReader que es para leer la informacion del fichero, la FileWriter que te ayuda a escribir en el mismo y una que es la que te recomiendo para que puedas leer y escribir en el fichero RandomAccessFile a esta clase puedes pasarle un objeto de la clase File y el segundo parametro es el tipo de apertura al archivo. bueno ahi te dejo una idea ya sabes por donde puedes comenzar a investigar. Exito!
1Comparar un archivo con otro y decir iguales si es igual
2borrar contenido de un aarchivo
@eduardo,
Para compararlos, quieres decir que tengan el mismo contenido?
Puedes ir recorriendo línea a línea y viendo si son iguales.
Para el tema de borrar el contenido de un archivo puedes hacer dos cosas. Abrir el fichero y escribir una cadena vacía o bien borrar el fichero y crearlo vacío.
Me parecen buenos ejemplos, así que los intentaré incluir en la web.
@eduardo,
Te he dejado el ejemplo de comparar el contenido de los ficheros en http://lineadecodigo.com/java/comparar-el-contenido-de-dos-ficheros-con-java/
@eduardo
Para borrar el contenido del archivo..
http://lineadecodigo.com/java/vaciar-el-contenido-de-un-fichero-con-java/
[...] llegaba una pregunta vía comentarios sobre como vaciar el contenido de un fichero con Java. Y nos pusimos manos a la [...]