Foros del Web » Programación para mayores de 30 ;) » Java »

Problema al leer archivo

Estas en el tema de Problema al leer archivo en el foro de Java en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 18/11/2009, 23:36
 
Fecha de Ingreso: noviembre-2009
Mensajes: 2
Antigüedad: 14 años, 5 meses
Puntos: 0
Exclamación Problema al leer archivo

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

Última edición por dowhill; 18/11/2009 a las 23:42
  #2 (permalink)  
Antiguo 19/11/2009, 05:51
serser
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema al leer archivo

Cita:
Iniciado por dowhill Ver Mensaje

// ...

ArrayList<Persona> AgendaPersonal = new ArrayList<Persona>();

// ...

else if (accion.equals("v"))
{
//
if (AgendaPersonal.isEmpty())

// ...

else if (accion.equals("m"))
{
//
if (AgendaPersonal.isEmpty())

// ...
Cuando reinicias la aplicación estás haciendo una comprobación sobre la matriz vacía y no sobre el archivo AgendaPersonal.bin


Última edición por serser; 19/11/2009 a las 07:34
  #3 (permalink)  
Antiguo 19/11/2009, 18:11
 
Fecha de Ingreso: noviembre-2009
Mensajes: 2
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Problema al leer archivo

Muchas graciasss :D te pasasteeeee
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:29.