¿Por qué ObjectInputStream.readObject() lee solo una linea en mi programa?
Publicado por paco01 (32 intervenciones) el 18/10/2017 23:44:15
Buenas. Tengo este método. Yo quiero que lea todas las lineas de un fichero binario con varias lineas escritas (cada una es un objeto), pero mi programa solo me lee la primera linea. Gracias.
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
public void CargarBinario(){
FileInputStream fis;
ObjectInputStream ois;
String cadena;
StringTokenizer st;
int posicion = 0;
int ID;
String nombre;
double peso;
int año;
boolean multijugador;
v = null;
try{
fis = new FileInputStream("Videojuegos.vi");
ois = new ObjectInputStream(fis);
while((cadena = ois.readObject().toString()) != null){
System.out.println(cadena);
st = new StringTokenizer(cadena, ";");
while(st.hasMoreTokens()){
ID = Integer.parseInt(st.nextToken());
nombre = st.nextToken();
peso = Double.parseDouble(st.nextToken());
año = Integer.parseInt(st.nextToken());
multijugador = Boolean.parseBoolean(st.nextToken());
v = new Videojuegos(ID, nombre, peso, año, multijugador);
vList.add(posicion, v);
posicion ++;
}
// cadena = ois.readObject().toString();
}
}catch(ClassNotFoundException e){
}catch(FileNotFoundException e){
}catch(IOException e){
}
}
Valora esta pregunta


0