Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.
Autor
|
Tema: Manejar archivo .txt desde java (ingresar datos, modificar datos, buscar datos y (Leído 20,401 veces)
|
chuystoty
Desconectado
Mensajes: 3
|
Saludos, hace unos días se me presento crear un programa en java que pueda acceder a un archivo txt. Y realice las siguientes parámetros, que pueda acceder al archivo y pueda ingresar datos, modificar datos, buscar datos y la eliminación de datos, todo con vista grafica. Poseo conocimientos sobre programación en java pero nunca he hecho un programa con las características anteriores. Si alguien podría guiarme en este trabajo lo agradecería bastante, gracias por su tiempo. 
|
|
|
|
|
En línea
|
|
|
|
|
Leyer
|
Lo basico que tienes que saber: java.io.BufferedReader //Entrada java.io.BufferedWriter //Salida try { //Escritura java.io.BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("Archivo.txt")); bufferedWriter.append("Esto es la linea 1"); bufferedWriter.flush(); bufferedWriter.newLine(); bufferedWriter.append("Esto es la linea 2"); bufferedWriter.flush(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { //Entrada BufferedReader bufferedReader = new BufferedReader(new FileReader("Archivo.txt")); //Buscar si existe una palabra String line = ""; while((line = bufferedReader.readLine())!=null){ System.out.println(line); if(line.indexOf("Palabra")!= -1){ System.out.println("Encontrado line: "+line); } } } catch (FileNotFoundException e) {e.printStackTrace(); } catch (IOException e) {e.printStackTrace(); }Para eliminar un registro etc.. tienes que guardar los datos del txt en tu programa, una vez guardados, buscas lo que vas a eliminar y lo eliminas,luego abres el buffer de escritura y escribes los nuevos datos del archivo
|
|
|
|
« Última modificación: 15 Junio 2010, 04:05 por LEYER »
|
En línea
|
|
|
|
|
|
kinos
Desconectado
Mensajes: 104
|
que pasa si no haces el "bufferedWriter.flush();" ? Quiero decir, si escribes 2 millones de cosas... ¿se quedan en el buffer? o se vacía solo el buffer cuando se llena y lo vuelca al archivo...
|
|
|
|
|
En línea
|
|
|
|
|
Leyer
|
Se almacena en el buffer hasta que se haga flush;
|
|
|
|
|
En línea
|
|
|
|
kinos
Desconectado
Mensajes: 104
|
He estado haciendo pruebas y he llegado a la conclusión de que es muchísimo más efectivo sin usar el "flush()".
He insertado 90.000.000 veces un String de 84 caracteres en un archivo haciendo flush() y otra sin flush():
-con flush(): RAM inicial = 510 MiB, RAM final = 567 MiB -> diferencia = 57 MiB total time: 10 minutes 21 seconds
-sin flush(): RAM inicial = 532 MiB, RAM final = 596 MiB -> diferencia = 64 MiB total time: 1 minutes 44 seconds
Pensaba que se petaría la Ram pero no es así, el BufferedWriter se debe de vaciar cuando tiene lo suficiente para escribir en el archivo. La diferencia de Ram suele oscilar entre los 25 o 20 MiB mas o menos.
|
|
|
|
|
En línea
|
|
|
|
chuystoty
Desconectado
Mensajes: 3
|
Lo basico que tienes que saber:
Publicado por: LEYER
Código:
java.io.BufferedReader
//Entrada Código:
java.io.BufferedWriter
//Salida
Código
try { //Escritura java.io.BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("Archivo.txt")); bufferedWriter.append("Esto es la linea 1"); bufferedWriter.flush(); bufferedWriter.newLine(); bufferedWriter.append("Esto es la linea 2"); bufferedWriter.flush(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
Código
try { //Entrada BufferedReader bufferedReader = new BufferedReader(new FileReader("Archivo.txt")); //Buscar si existe una palabra String line = ""; while((line = bufferedReader.readLine())!=null){ if(line.indexOf("Palabra")!= -1){ System.out.println("Encontrado line: "+line); } } } catch (FileNotFoundException e) {e.printStackTrace(); } catch (IOException e) {e.printStackTrace(); }
Para eliminar un registro etc.. tienes que guardar los datos del txt en tu programa, una vez guardados, buscas lo que vas a eliminar y lo eliminas,luego abres el buffer de escritura y escribes los nuevos datos del archivo
Esta información ha sido de ayuda pero para mala fortuna mía, aun no entiendo bien como crear este programa con los parámetros dichos al principio, agradecería mas ayuda en código o bien algún manual que recomienden donde pueda conocer mas y poder crear este programa
|
|
|
|
|
En línea
|
|
|
|
|
|
metalrocksita
Desconectado
Mensajes: 1
|
Yo quisiera saber...como crear una clase Visualizar Archivo ?? quién tenga una idea, se lo agradecería mucho...es lo único que me falta para terminar mi programa. Saludos.
|
|
|
|
|
En línea
|
|
|
|
|
|
|
|