tengo este programa, pero no me lee el archivo..
no se cual es el problema. si pudieran darme una mano me seria de gran ayuda
_______________Principal__________________________ _
import java.util.Scanner;
import java.io.*;
import java.util.ArrayList;
public class AgendaPersonal implements Serializable
{
public static void main (String[] args)
{
Scanner input = new Scanner(System.in);
String accion = "";
ArrayList<Persona> AgendaPersonal = new ArrayList<Persona>();
System.out.println(" ");
while (!accion.equals("q"))
{
System.out.println("\nMENU: ");
System.out.println("\tv - ver agenda");
System.out.println("\tm - modifcar Agenda");
System.out.println("\ta - Agregar Agenda");
System.out.println("\tq - quitar");
System.out.println(" ");
System.out.print("agrege Opcion: ");
accion = input.nextLine();
accion = accion.toLowerCase();
if (accion.equals("a"))
{
//
// Persona digito = prompt();
AgendaPersonal.add(digito);
//
write(AgendaPersonal);
System.out.println("\n\n*****Entrada hecha a guia telefonica.*****");
}
else if (accion.equals("v"))
{
//
if (AgendaPersonal.isEmpty())
{
System.out.println("\n\nNo hay ningun contacto en la AgendaPersonal.");
System.out.println("¿Por que no agrega usted unos?");
System.out.println("---------------------------------------\n\n");
}
else
{
/////
print();
}
}
else if (accion.equals("m"))
{
//
if (AgendaPersonal.isEmpty())
{
System.out.println("\n\n------------------------------------------------------------------");
System.out.println("**Error** No puede modificar contactos en la AgendaPersonal, no hay");
System.out.println("\tpor que no agrega usted uno?");
System.out.println("------------------------------------------------------------------");
}
else
{
//
print();
System.out.print("\n\nEntre en el numero que usted quiere modificar: ");
int modificar = input.nextInt();
//
String filler = input.nextLine();
//
Persona digito = prompt();
//
AgendaPersonal.set((modificar -1), digito);
write(AgendaPersonal);
System.out.println("\n\n***entrada " + modificar + " ha sido cambiado.***");
}
}
else if (accion.equals("q"))
{
write(AgendaPersonal);
System.out.println("\n\n\tEsto es lo que usted ha guardado en la Agenda Telefonica: ");
print();
System.out.println(" ");
System.out.println(" Esto explotara en 3 segundos.");
System.out.println(" ");
}
else
{
System.out.println(" ");
System.out.println("'" + accion + "' no es una opcion valida. Por favor escoja otra vez.");
System.out.println(" ");
}
}
}
private static void write(ArrayList<Persona> AgendaPersonal)
{
ObjectOutputStream writeFile = null;
try
{
writeFile = new ObjectOutputStream(new FileOutputStream("AgendaPersonal.bin"));
writeFile.writeObject(AgendaPersonal);
}
catch (FileNotFoundException e)
{
System.out.println("Problema que crea archivo AgendaPersonal");
}
catch(IOException e)
{
System.out.println("Problema con salida a archivo AgendaPersonal");
}
try
{
writeFile.close();
}
catch(IOException e)
{
System.out.println("Problema con salida a archivo AgendaPersonal");
}
}
private static void print()
{
//
ObjectInputStream readFile = null;
try
{
readFile = new ObjectInputStream(new FileInputStream("AgendaPersonal.bin"));
ArrayList<Persona> printBook = (ArrayList<Persona>)readFile.readObject();
System.out.println("\n\n\tSu Guia telefonica:");
System.out.println(" ");
int last = printBook.size();
//
for (int i = 0; i < last; i++)
{
Persona forPrint = printBook.get(i);
System.out.println((i + 1) + ".) " + forPrint);
}
}
catch (Exception e)
{
System.out.println("Error leyendo archivo AgendaPersonal");
}
try
{
readFile.close();
}
catch(IOException e)
{
System.out.println("Problema con salida a archivo AgendaPersonal");
}
}
static Persona prompt()
{
Scanner input = new Scanner(System.in);
int TelefonoFijo, celular ;
String nombre, Direccion;
System.out.println("\n\n\tAgenda Personal:");
System.out.print("Entre en el nombre de el contacto: ");
nombre = input.nextLine();
System.out.print("\nDireccion : ");
Direccion = input.nextLine();
System.out.print("\nIngrese telefono fijo: ");
TelefonoFijo = input.nextInt();
System.out.print("\ncelular: ");
celular = input.nextInt();
String filler = input.nextLine();
Persona digito = new Persona(nombre, TelefonoFijo,celular,Direccion);
return digito;
}
}
____________________persona(Agenda)_______________ ________________
import java.io.*;
public class Persona implements Serializable
{
int Telefonofijo, Celular;
String nombre, Direccion;
public Persona(String nombre, int Telefonofijo, int Celular, String Direccion)
{ this.Telefonofijo =Telefonofijo;
this.Celular = Celular;
this.Direccion= Direccion;
this.nombre = nombre;
}
public String toString()
{
String mostrar = nombre + ": " +" Direccion----> "+ Direccion + " Telefono Fijo------> " + Telefonofijo + " Celular-------> " +Celular;
return mostrar;
}
}
Ojala me pudieran dar una manito :)
si no es de aqui.. muevan el tema :L