El problema de los buzones de java ahora lo tengo que hacer con ficheros, me he leido los apuntes pero no me a servido de mucho, a ver si alguien me echa un cable.
el codigo que llevo echo:
package ejercicio1;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import javax.swing.JOptionPane;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
System.out.println("Escribiendo en el archivo de salida...");
FileOutputStream fos = new FileOutputStream("serial");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(correo.getContenido());
oos.flush();
oos.close();
menuaplicacion();
}
public static void menuaplicacion() throws IOException{
Buzon buzon = new Buzon();
String contenido="", cont="";
int opcion, numcorreo;
BufferedReader Entrada = new BufferedReader(new InputStreamReader(System.in));
do{
opcion=Integer.parseInt(JOptionPane.showInputDialog( "1-Numero total de correos" +
"\n2-Añadir correo" +
"\n3-Mostrar si queda algun correo por leer " +
"\n4-Mostrar el primer correo no leido " +
"\n5-Mostrar el correo deseado "+
"\n6-Eliminar correo deseado " +
"\n\n-Elige una opcion"));
if(opcion==1){
JOptionPane.showMessageDialog(null, "Numero de correos que hay en el buzon: " + buzon.numeroDeCorreos());
}
else if(opcion==2){
do{
contenido=JOptionPane.showInputDialog("Introduce contenido del mensaje: ");
Correo correo = new Correo(contenido);
if(!buzon.añadeCorreo(correo)) {
JOptionPane.showMessageDialog(null, "Buzon lleno");
cont = "N";
} else {
cont = JOptionPane.showInputDialog(null,"¿Continuar introduciendo correos? S/N");
}
}while("s".equals(cont) || "S".equals(cont));
}else if(opcion==3){
JOptionPane.showMessageDialog(null, "Quedan correos por leer : " + buzon.porLeer());
}
else if(opcion==4){
JOptionPane.showMessageDialog(null, buzon.muestraPrimerNoLeido());
}
else if(opcion==5){
numcorreo=Integer.parseInt(JOptionPane.showInputDialog("Introduce el numero de correo a visualizar: "));
JOptionPane.showMessageDialog(null, "el contenido del mensaje es:" + buzon.muestra(numcorreo));
}
else if(opcion==6){
numcorreo=Integer.parseInt(JOptionPane.showInputDialog("Introduce el numero de correo a eliminar: "));
buzon.elimina(numcorreo);
JOptionPane.showMessageDialog(null, "Correo borrado");
}
}while(opcion<7);
}
}