
Usar la informacion guardada en la memoria ram
Publicado por Marco Antonio (2 intervenciones) el 14/05/2018 05:31:13
Hola buenas a todos necesito saber como hacer un metodo para poder buscar informacion o registros que hice desde eclipse y que se guardaron en la memoria ram
Pasa que tengo un programa que registra pasajeros pero a la hora de salir y volver a entras ese registro si bien no se pierde si no que permanece en la memoria no me aparece en la lista de pasajeros como yo deseo
necesito saber como puedo mostras esos datos previamente guardados y que aparezcan en forma de lista
les dejo el programa para que le echen un ojo tambien cabe recalcar que muchos de los datos que mando a guardar no me guardan o me salen vacios
Clase Data
Mando a traer a la clase data con contructos
Bueno lo que quiero hacer es que al momento de elegir la 3ra opcion me salga la lista de los pasajeros que se ingresaron anteriormente y estan guardados en la memoria y de ser possible saber si se pueden modificar esos datos o solo se mostrarian nadamas
algo que me pidieron que le agregara pero no encuentro solucion es seleccionar un pasajero y darlo de baja (tanto logica como fisica )osea baja temporal o permanente es algo que no se muy bien como hacerle
podrian ayudarme ya que no tengo una idea de como poder solucionar esos dos problemas
Los metodos de guardardisco e imprimir son los que tengo que usar para guardarlos en la memoria
y si bien me guardan no puedo hacer para mostrarlos o hacer un metodo para buscarlos
Pasa que tengo un programa que registra pasajeros pero a la hora de salir y volver a entras ese registro si bien no se pierde si no que permanece en la memoria no me aparece en la lista de pasajeros como yo deseo
necesito saber como puedo mostras esos datos previamente guardados y que aparezcan en forma de lista
les dejo el programa para que le echen un ojo tambien cabe recalcar que muchos de los datos que mando a guardar no me guardan o me salen vacios
Clase Data
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
import java.io.FileNotFoundException;
import java.io.RandomAccessFile;
import javax.swing.JOptionPane;
import ProyectoPOO2.MiLibreria;
public class Pasajero {
protected String identificacion;
protected String nombre;
protected String apellidos;
protected String email;
protected Long celular;
protected int edad;
RandomAccessFile ar;
public Pasajero(String identificacion, String nombre, String apellidos,String email, Long celular,int edad) {
this.identificacion = "desconocido";
this.nombre = "desconocido";
this.apellidos = "desconocido";
this.email = "desconocido";
this.celular = celular;
this. edad = 0;
}
public void SetIdentificacion(String identificacion)
{
this.identificacion = identificacion;
}
public void SetNombre(String nombre)
{
this.nombre = nombre;
}
public void SetApellidos(String apellidos)
{
this.apellidos = apellidos;
}
public void SetEmail(String email)
{
this.email = email;
}
public void SetCelular(Long celular)
{
this.celular = celular;
}
public void SetEdad(int edad)
{
this.edad = edad;
}
public String getIdentificacion()
{
return identificacion;
}
public String getNombre()
{
return nombre;
}
public String getApellidos()
{
return apellidos;
}
public String getEmail()
{
return email;
}
public Long getCelular()
{
return celular;
}
public int getEdad()
{
return edad;
}
public String getStringPasajero ()
{
String mensaje = "Información actual de pasajero: \n";
mensaje = mensaje + "Identificacion: " + this.getIdentificacion()+"\n";
mensaje = mensaje + "Nombre: " + this.getNombre()+"\n";
mensaje = mensaje + "Apellidos: " + this.getApellidos() + "\n";
mensaje = mensaje + "Email: " + this.getEmail() + "\n";
mensaje = mensaje + "Celular: " + this.getCelular() + "\n";
mensaje = mensaje + "Edad: " + this.getEdad() + "\n";
mensaje = mensaje + "\n\n\n";
return mensaje;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
public class Dialogo extends Pasajero{
RandomAccessFile ar;
String dialogo;
boolean ban=false;
boolean ban2=false;
public Dialogo(String identificacion, String nombre, String apellidos, String email, Long celular, int edad) {
super(identificacion, nombre, apellidos, email, celular, edad);
// TODO Apéndice de constructor generado automáticamente
}
Pasajero ob=new Pasajero(apellidos, apellidos, apellidos, apellidos, celular, edad);
public int obtenerOpcionMenu() {
dialogo = "MENU DE PROGRAMA PASAJEROS\n";
dialogo += "1. Insertar pasajero\n";
dialogo += "2. Modificar pasajero\n";
dialogo += "3. Listar los pasajeros\n";
dialogo += "4. Guardar Pasajero ";
dialogo += "5. Eliminar pasajero\n";
dialogo += "6. Salir\n";
dialogo += "Escoja Opción:\n";
return Integer.parseInt(JOptionPane.showInputDialog(dialogo));
}
public String obtenerIdentificacionPasajero() {
this.SetIdentificacion(JOptionPane.showInputDialog("Ingresa La Identificacion del pasajero"));
return this.getIdentificacion();
}
public String obtenerNombrePasajero() {
this.SetNombre(JOptionPane.showInputDialog("Ingresa Nombre"));
return nombre;
}
public String obtenerApellidosPasajero() throws IOException {
this.SetApellidos(JOptionPane.showInputDialog("Ingresa Apellido"));
return this.getApellidos();
}
public String obtenerEmailPasajero() throws IOException {
this.SetEmail(JOptionPane.showInputDialog("Ingresa correo"));
return email;
}
public Long obtenerCelularPasajero() {
boolean ban=false;
do{
try {
this.SetCelular(Long.parseLong(JOptionPane.showInputDialog("Ingresa numero celular")));
ban=true;
}catch(Exception e)
{
JOptionPane.showMessageDialog(null, "NO es numero");
}
} while(!ban);
return celular;
}
public int obtenerEdadPasajero() {
do{
try {
this.SetEdad(Integer.parseInt(JOptionPane.showInputDialog("Ingresa Edad Del pasajero")));
ban2=true;
}catch(Exception e)
{
JOptionPane.showMessageDialog(null, "NO es numero");
}
} while(!ban2);
return edad;
}
public void mostrarMensaje (String mensaje) {
JFrame frame = new JFrame("Mensaje");
JOptionPane.showMessageDialog(frame, mensaje);
}
public void cerrarPrograma () {
JFrame frame = new JFrame("Final del programa");
JOptionPane.showMessageDialog(frame, "Gracias por usar este programa. Fin");
System.exit(0);
}
public void GuardarDisco2()
{
try { ar=new RandomAccessFile("agenda.dat","rw");
ar.seek(ar.length());
ar.writeBytes(this.getIdentificacion()+"\n");
ar.writeBytes(this.getNombre()+"\n");
ar.writeBytes(this.getApellidos()+"\n");
ar.writeBytes(this.getEmail()+"\n");
ar.writeBytes(this.getCelular()+"\n");
ar.writeBytes(this.getEdad()+"\n");
ar.close();
}
catch(FileNotFoundException e)
{MiLibreria.Msje("Error");}
catch(Exception e)
{MiLibreria.Msje("Error");}
}
public void Imprimir2()
{
try {
ar=new RandomAccessFile("agenda.dat","rw");
while((this.nombre=ar.readLine())!=null)
{
this.apellidos=ar.readLine();
this.identificacion=ar.readLine();
this.celular=ar.readLong();
this.email=ar.readLine();
this.edad=ar.read();
JOptionPane.showMessageDialog(null, "Identificacion"+this.getIdentificacion());
JOptionPane.showMessageDialog(null, "Nombre "+this.getNombre());
JOptionPane.showMessageDialog(null, "Apellidos "+this.getApellidos());
JOptionPane.showMessageDialog(null, "Edad"+this.getEdad());
JOptionPane.showMessageDialog(null, "Email "+this.getEmail());
JOptionPane.showMessageDialog(null, "Celular "+this.getCelular());
}
ar.close();
}
catch(FileNotFoundException e)
{ JOptionPane.showMessageDialog(null, "Error"); }
catch(Exception e)
{JOptionPane.showMessageDialog(null, "Error");}
}
}
Operaciones
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
public class algoritmoTest {
RandomAccessFile ar;
int opcionEligeUsuario=0 ;
ArrayList<Pasajero> listaDePasajeros = new ArrayList<Pasajero> ();
Dialogo opcionesUsuario = new Dialogo(null, null, null, null, null, opcionEligeUsuario);
Dialogo mensajeVent = new Dialogo(null, null, null, null,null, opcionEligeUsuario );
Pasajero ob=new Pasajero(null, null, null, null, null, opcionEligeUsuario);
public void calculos() throws IOException {
while (opcionEligeUsuario != 5 ) {
opcionEligeUsuario = opcionesUsuario.obtenerOpcionMenu();
//Registrar la información de pasajero opción 1
if (opcionEligeUsuario == 1) {
opcionesUsuario.obtenerIdentificacionPasajero();
opcionesUsuario.obtenerNombrePasajero();
opcionesUsuario.obtenerApellidosPasajero();
opcionesUsuario.obtenerEmailPasajero();
opcionesUsuario.obtenerCelularPasajero();
opcionesUsuario.obtenerEdadPasajero();
opcionesUsuario.GuardarDisco2();
//Terminamos guardando el objeto pasajero
listaDePasajeros.add( opcionesUsuario);
}
//Fin opción 1 registro información de pasajero
//Modificar la información de un pasajero opción 2
if (opcionEligeUsuario == 2) {
String identPasajeroBuscado = opcionesUsuario.obtenerIdentificacionPasajero();
boolean pasajeroEncontrado = false;
Iterator<Pasajero> it = listaDePasajeros.iterator();
Pasajero tmpAnalizando;
while ( it.hasNext() ) { //Utilizamos el método hasNext de los objetos tipo Iterator
tmpAnalizando = it.next(); //Utilizamos el método next de los objetos tipo Iterator
if (tmpAnalizando.getIdentificacion().equals(identPasajeroBuscado) ) {
pasajeroEncontrado = true;
String mensaje = tmpAnalizando.getStringPasajero();
mensaje = mensaje + "\n\n\n";
mensaje = mensaje + "A continuación introduzca nuevos datos para este pasajero";
mensajeVent.mostrarMensaje(mensaje);
// Aquí código para pedir nuevos datos para el pasajero
mensajeVent.mostrarMensaje("La identificación no puede ser modificada, indique resto de datos");
opcionesUsuario.obtenerNombrePasajero();
opcionesUsuario.obtenerApellidosPasajero();
opcionesUsuario.obtenerEmailPasajero();
opcionesUsuario.obtenerCelularPasajero();
opcionesUsuario.obtenerEdadPasajero();
mensaje = tmpAnalizando.getStringPasajero();
mensajeVent.mostrarMensaje(mensaje);
} else { } //else vacío. No hay acciones a ejecutar.
} //Cierre del while
if (pasajeroEncontrado == false) {
mensajeVent.mostrarMensaje("No se encontró el pasajero con esa identificación");
}
} //Fin opción 2 registro información de pasajero
//Opción 3 listar pasajeros
if (opcionEligeUsuario == 3) {
String listado = "";
Iterator<Pasajero> it2 = listaDePasajeros.iterator();
Pasajero tmpAnalizando;
while ( it2.hasNext() ) { //Utilizamos el método hasNext de los objetos tipo Iterator
tmpAnalizando = it2.next(); //Utilizamos el método next de los objetos tipo Iterator
listado = listado + tmpAnalizando.getStringPasajero();
listado = listado + "\n\n\n";
} //Cierre del while
mensajeVent.mostrarMensaje(listado);
} //Fin opción 3 listar pasajeros
//Eliminar un pasajero opción 4
if (opcionEligeUsuario == 4) {
String identPasajeroBuscado = opcionesUsuario.obtenerIdentificacionPasajero();
boolean pasajeroEncontrado = false;
Iterator<Pasajero> it = listaDePasajeros.iterator();
Pasajero tmpAnalizando;
while ( it.hasNext() && pasajeroEncontrado==false ) { //Utilizamos el método hasNext de los objetos tipo Iterator
tmpAnalizando = it.next(); //Utilizamos el método next de los objetos tipo Iterator
if (tmpAnalizando.getIdentificacion().equals(identPasajeroBuscado) ) {
pasajeroEncontrado = true;
String mensaje = tmpAnalizando.getStringPasajero();
mensaje = mensaje + "\n\n\n";
mensaje = mensaje + "Se procede al borrado de datos de este pasajero\n\n";
mensajeVent.mostrarMensaje(mensaje);
// Aquí código para pedir nuevos datos para el pasajero
listaDePasajeros.remove(tmpAnalizando);
pasajeroEncontrado=true;
} else { } //else vacío. No hay acciones a ejecutar.
} //Cierre del while
if (pasajeroEncontrado == false) {
mensajeVent.mostrarMensaje("No se encontró el pasajero con esa identificación");
}
} //Fin opción 2 registro información de pasajero
}
opcionesUsuario.cerrarPrograma();
}
} //Cierra clase
principal
1
2
3
4
5
6
7
8
9
10
11
public class PrincipalP {
public static void main(String[]args) throws IOException {
algoritmoTest ob1=new algoritmoTest();
ob1.calculos();
}
}
Bueno lo que quiero hacer es que al momento de elegir la 3ra opcion me salga la lista de los pasajeros que se ingresaron anteriormente y estan guardados en la memoria y de ser possible saber si se pueden modificar esos datos o solo se mostrarian nadamas
algo que me pidieron que le agregara pero no encuentro solucion es seleccionar un pasajero y darlo de baja (tanto logica como fisica )osea baja temporal o permanente es algo que no se muy bien como hacerle
podrian ayudarme ya que no tengo una idea de como poder solucionar esos dos problemas
Los metodos de guardardisco e imprimir son los que tengo que usar para guardarlos en la memoria
y si bien me guardan no puedo hacer para mostrarlos o hacer un metodo para buscarlos
Valora esta pregunta


0