Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/07/2009, 16:35
leonyer007
 
Fecha de Ingreso: julio-2009
Mensajes: 1
Antigüedad: 14 años, 10 meses
Puntos: 0
como modificar archivos en java

hola a todos, Yo soy nuevo en programacion en java y mi pregunta en si es la siguiente:

necesito crear un registro tal que contenga nombre,apellido, edad, etc.. luego de averlo creado necesito guardalo en un archivo. despues de aver hecho eso con su respectivo menu de opciones tales como:
1. desea visualisar el contenido del archivo
2 desea introducir una nueva persona en el registro
y etc..
bueno a mi me interesa mas es la siguiente opcion:
- desea modificar algo del registro?

nose si me explico bien pero quiero saber es como cambio el campo o atributo talque sea el nombre, el apellido, etc.. ya guardados en el archivo. lo que he podido hacer es lo siguiente:

import java.io.*;
public class Programa {

//variables globales
static int n;
static String name;
static int identidad;

public static void main(String args[])throws IOException {


//leo los datos
InputStreamReader isr=new InputStreamReader (System.in);
BufferedReader br=new BufferedReader (isr);


leer (); // llamada a la subrutina


}//fin main

static void leer () throws IOException{

int nuevo;

class Persona {

int cedula;
String nombre;
}//el registro

//leo los datos
InputStreamReader isr=new InputStreamReader (System.in);
BufferedReader br=new BufferedReader (isr);

System.out.println("indique 1 si desea añadir una nueva persona en el registro, sino 2 para listar el archivo");
nuevo = Integer.parseInt(br.readLine());

if ( nuevo == 1 ){

// solicitar cuantos registros desea
System.out.println("cuantos nuevos registros desea incorporar: ");
n = Integer.parseInt(br.readLine());


for ( int i = 0; i < n; i++ ){
System.out.println( "Introduzca el nombre" );
name = br.readLine();

System.out.println( "Introduzca la cedula" );
identidad = Integer.parseInt(br.readLine());

Persona persona1 = new Persona();
persona1.cedula = identidad;
persona1.nombre = name;
}//fin for
}//fin si


if ( nuevo == 2 ){


//GESTION DE ARCHIVOS
FileWriter f0 = new FileWriter ( "file1.txt", true ); //creo el archivo
f0.write ( name + " " + identidad + " \n" ); //registro los datos
f0.close();//cierrro el archivo

//lectura de archivos
System.out.println("Esto es lo registrado en el archivo:\n ");
System.out.println ("La persona registrada en el sistema es:\n");
System.out.println ("Nombre cedula\n");


FileReader fr = new FileReader ( "file1.txt" );
BufferedReader bl=new BufferedReader (fr);
String s;
while ( ( s = bl.readLine ()) != null ) {
System.out.println(s);
}
fr.close();

}//fin si
System.out.println("desea modificar el archivo? introduzca el 1");
//OPCION NO TERMINADA POR NO SABER COMO HACER


}//fin de subrutina

}//fin clase programa


Bueno esto es mas o menos lo que tengo, es claro que soy nuevo en java. ojala y alguien pudiese ayudarme. sino entienden algo con respecto a lo que necesito aganmelo saber.
muchas greacias de antemano.