helpp!!! i/o

Fernando
26 de Junio del 2004
Hola a todos.

Quiero ver si alguien me puede ayudar un poco en esto.

Estoy haciendo una pequeña aplicación, en la cual serializo una clase para usarla como un registro, luego quiero desserializarla, pero el problema es que primero quiero buscar la clase con el método seek, pero creo que no manejo bien este método.

Lo que quiero saber, si tengo una clase como la siguiente:

Class estudiante implements Serializable
{
Int matricula;
String nombre;
Int edad;
etc.……….
// // / / /
}
¿ Si yo serializo esta clase , ¿Cómo? a la hora de desserializarla , primero busco el objeto bajo un criterio especifico por ejemplo edad o nombre , para que me devuelva el objeto que tenga “nombre = al que yo le pase”?


No se si me explico, si alguien me pudiera ayudar.

GRACIAS DE ANTEMANO.



astur
26 de Junio del 2004
NO se si es lo que estas pidiendo.
Para serializar una clase, debes creasr un objeto de tipo
ObjetOutputStream, el cual recibe como parámetro en un fichero de texto en el cual escribirá la información.
Para escribir y almacenar un objeto solo es neceario crear una referencia al objeto, e invocar el método writeObject de la clase antes nombrada. Este tipo de serialización utiliza arhivos binarios. Es decir cuando habras el fichero no encontrarás por ninguna parte los atributos que buscas, sólo simbolos "raros".
Para deserializar, debes crear un ObjectInputStream. El cual necesita un InputStream(fichero del cual leerá la información). Para deserializar existe un metodo readObject, el cual devuelve un objeto tipo Object, con un cast apropiado consigues tu objeto inicial.

Existe otra forma para la serializacíon y deserialización sin utilizar el interface que ofrece java, pero es bastante más liosa....
Espero haberte servido de ayuda
Suerte!!

Fernando
26 de Junio del 2004
lo que quiero hacer es lo siguiente.
estoy haciendo una aplicacion que valla guardando objetos de forma serializada y luego acceder a uno de los objetos de forma directa.
para ser mas especifico, la aplicacion guarda un objeto tipo estudiante con nombre , matricula, edad etc. hasta ahi no tengo problemas.
el asunto esta en que , a la hora de des-serializar el objeto primero quiero buscar un objeto especifico dentro del archivo de estudiantes(que es el que guarda los objetos tipo estudiante), de forma tal que pueda hacer busquedas directas, por ejemplo si quiero buscar el estudiante "juan" digito el nombre , y voy directo al objeto cuya variable nombre sea igual a "juan". osea buscar bajo un criterio especifico tomando como referencia una variable del objeto.

no se si me doy a entender.

GRACIAS.