Hola,
 
Os quería hacer una consulta, tengo este metodo:
 
  	public ArrayList lecturaObjetos(int numObjetos) throws          Exception,FileNotFoundException,IOException
	{
		ArrayList array = new ArrayList(numObjetos);
		array.add(Arrays.asList("estanteria.dat"));
                ListIterator listalterador;
                listalterador = array.listIterator();
  While(listalterador.hasNext()){
                       String objeto = (String)listalterador.next();
                       try {
                           Integer numero = new Integer (objeto);
                           }catch (NumberFormatException e){
                               listalterador.remove();
                           }
                        }
                return array;
	}
 
 
La cuestión es que me está dando al compilar error en el WHILE.
Me da este mensaje: Error en la lectura del ficheroUncompilable source code - Erroneous sym type: While
 
Alguien me puede guiar??
 
MUCHAS GRACIAS.
 
La clase completa es esta: 
 
package ejerciciofinal.gestor;
 
 
import ejerciciofinal.clasesbase.EstanteriaMultimedia;
import ejerciciofinal.clasesbase.Pelicula;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.*;
 
public class EscrituraLecturaDeObjetosMultimedia {
 
    // VARIABLES
    private FileOutputStream fileOutPutStream;
    private FileInputStream fileInPutStream;
    private ObjectOutputStream escritura;
    private ObjectInputStream lectura;
    private String archivo;
 
 
    // CONSTRUCTORES
    public EscrituraLecturaDeObjetosMultimedia(String archivo) {
        this.archivo = archivo;
    }
 
    // METODOS
    public void escrituraObjetos(EstanteriaMultimedia estanteriaMultimedia) throws IOException {
        fileOutPutStream = new FileOutputStream(archivo);
        escritura = new ObjectOutputStream(fileOutPutStream);
 
        for (int i = 0; i < estanteriaMultimedia.size(); i++) {
            escritura.writeObject(estanteriaMultimedia.get(i))  ;
        }
        escritura.close();
    }
 	public ArrayList lecturaObjetos(int numObjetos) throws Exception,FileNotFoundException,IOException
	{
		ArrayList array = new ArrayList(numObjetos);
		array.add(Arrays.asList("estanteria.dat"));
                ListIterator listalterador;
                listalterador = array.listIterator();
                While(listalterador.hasNext()){
                       String objeto = (String)listalterador.next();
                       try {
                           Integer numero = new Integer (objeto);
                           }catch (NumberFormatException e){
                               listalterador.remove();
                           }
                        }
                return array;
	}
 
	public static void main(String[] args) {
		String fichero;
		EscrituraLecturaDeObjetosMultimedia ejercicio= new EscrituraLecturaDeObjetosMultimedia("estanteria.da  t");
		EstanteriaMultimedia objeto=new EstanteriaMultimedia(3);
	        objeto.add( new Pelicula( "algo","algos","assa","algos s" ) ); 
                objeto.add( new Pelicula( "algo2","algos","assa","algos s" ) );
                objeto.add( new Pelicula( "algo3","algos","assa","algos s" ) );
		try{
 
			ejercicio.escrituraObjetos(objeto);
		}
		catch(IOException e){
			System.out.println("Error al escribir en el archivo"+e.getMessage());
		}
                try{
			ArrayList array = ejercicio.lecturaObjetos(1);
			System.out.println(array.toString());
		}catch(FileNotFoundException f){
			System.out.println("Fichero no encontrado"+f.getMessage());
		}catch(Exception e){
			System.out.println("Error en la lectura del fichero"+e.getMessage());
		}
        }
} 
  
 

