Estoy haciendo un pacman en java y quiero guardar un TOP 5 de los mejores puntajes. Para esto primero quiero guardar en un archivo .dat los Objetos jugador que luego voy a intentar abrir.
Mi problema es que al leer, solo me tira el primer objeto y luego me dice que llego al final de archivo
Este es el método que se encarga de abrir el archivo
Código: text
Este es el método que utilizo para guardar los objetos, creeria que se guardan bien, a groso modo intente abrir el archivo.dat y pareciera que guarda uno despues del otro.
Código: text
Les agradecería algo de ayuda y cualquier recomendación sobre el código ya que es la primera vez que utilizo las api de java.
Mi problema es que al leer, solo me tira el primer objeto y luego me dice que llego al final de archivo
Este es el método que se encarga de abrir el archivo
public void AbrirTop() throws ClassNotFoundException, IOException{
ObjectInputStream entrada=null;
try {
entrada=new ObjectInputStream(new FileInputStream("src/datos.dat"));
for(int i=0; i<5000; i++){
[b]TopJugadores=(Jugador) entrada.readObject();[/b]
System.out.println(TopJugadores.getNombre());
System.out.println(TopJugadores.getPuntFinal());
//entrada.close();
}
} catch (FileNotFoundException e) {
System.out.println("no se encuentra el archivo .dat");
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("Final de archivo");
}
Este es el método que utilizo para guardar los objetos, creeria que se guardan bien, a groso modo intente abrir el archivo.dat y pareciera que guarda uno despues del otro.
public void GuardarJugador() throws ClassNotFoundException, IOException {
//Jugador UnJugador=new Jugador();
//UnJugador.setPuntFinal(this.getPuntos());
String nombre=JOptionPane.showInputDialog(null, "Introduce tu nombre");
//UnJugador.setNombre(nombre);
ObjectOutputStream salida=null;
Jugador UnJugador=new Jugador(nombre,this.getPuntos());
try {
salida = new ObjectOutputStream(new FileOutputStream("src/datos.dat",true));
salida.writeObject(UnJugador);
//salida.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("No se encontro archivo");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Les agradecería algo de ayuda y cualquier recomendación sobre el código ya que es la primera vez que utilizo las api de java.