Erro de I/O na leitura de arquivo

Boas minha gente, estou a ter um problema que nao tou a conseguir resolver sera que alguem me dá uma maozinha, no codigo da funçao para fazer o load do ficheiro :

// Load the addressbook from fileName.
    public void load ()
    {
	BufferedReader in;
	String nome, tipo;
	int ano, duracao;

	try
	{
	    in = new BufferedReader (new FileReader (fileNome));
	}
	catch (FileNotFoundException e)
	{
	    System.out.println (fileNome + " not found.");
	    return;
	}

	try
	{
	    nome = in.readLine ();
	    while (nome != null)
	    {
		tipo = in.readLine ();
		if (!enter (nome, tipo))   // Linha com erro
		{
		    System.out.println ("Sorry, DVD book file too large.");
		    break;
		}

		name = in.readLine ();
	    }
	}
	catch (IOException e)
	{
	    System.out.println ("An I/O error occurred while reading " + fileNome);
	}

	try
	{
	    in.close ();
	}
	catch (IOException e)
	{
	    System.out.println ("An I/O error occurred while closing " + fileNome);
	}
    } // load method

Dá me o seguinte erro na linha que está com // Linha com erro
enter(java.lang.String,java.lang.String, java.lang.String, int, int) in Videoteca cannot be applied to (java.lang.String, java.lang.String)

Alguem consegue me ajudar a ultrapassar este erro? Beijos

Oi Betty.

Vc precisa mudar a assinatura desse seu metodo enter ou criar outro com a assinatura que vc está passando.

Ele está esperando (java.lang.String,java.lang.String, java.lang.String, int, int) e vc está passando (java.lang.String,java.lang.String).

[]

Pierre

Tipo eu percebi isso ou seja ao ler a mensagem dava pra se entender mas nao tou a ver que mudança tenho que fazer já andei a mudar algumas tipos de variaveis etc etc mas nada :frowning: :frowning:

Que linha tenho que mudar em concreto e pra qual de modo a prosseguir sem erros? :frowning:

beijinhos

Boas, vou enviar aqui o codigo completo de forma a que alguem me possa ser mais claro na ajuda, o erro é o mesmo de cima:

import java.io.*;

public class Videoteca
{
    protected VideotecaLinkEntry first;
    protected String fileNome;

    public Videoteca (String fileNome)
    {
	first = null;
	this.fileNome = fileNome;
    } // construtor do sistema da Videoteca

    protected VideotecaLinkEntry find (String nome)
    {
	VideotecaLinkEntry where = first;
	while ((where != null) && (!nome.equals (where.getNome ())))
	{
	    where = where.getLink ();
	}
	return where;
    } // procura do metodo

    // Alterar dados de um DVD, o DVD ja deve estar inserido
    public void change (String nome, String tipo, String realizador, int ano, int duracao)
    {
	VideotecaLinkEntry entry = find (nome);
	if (entry == null)
	{
	    System.out.println (nome + " nao esta inserido no sistema da Videoteca");
	}
	else
	{
	    entry.setTipo (tipo);
	    entry.setRealizador (realizador);
	    entry.setAno (ano);
	    entry.setDuracao (duracao);
	}
    } // Mudar o metodo

    // Apaga o DVD, o mesmo ja tem de estar inserido no sistema
    public void delete (String nome)
    {
	
	if (nome.equals (first.getNome ()))
	{
	    first = first.getLink ();
	}
	else
	{
	    VideotecaLinkEntry where, prev;
	    prev = first;
	    where = first.getLink ();
	    while (where != null)
	    {
		if (nome.equals (where.getNome ()))
		{
		    prev.setLink (where.getLink ());
		    break;
		}
		else
		{
		    prev = where;
		    where = where.getLink ();
		}
	    }
	}
    } // apaga o metodo

    // Criar uma nova entrada no sistema da Videoteca
    public boolean enter (String nome, String tipo, String realizador, int ano, int duracao)
    {
	
	VideotecaLinkEntry entry;

	entry = new VideotecaLinkEntry (nome, tipo, realizador, ano, duracao, first);
	if (entry != null)
	{
	    first = entry;
	    return true;
	}

	// Não existe espaço para inserir mais, retorna falso.
	return false;
    } // inserir metodo

    // Pesquisar as caracteristicas de um dvd
    public String lookUp (String nome)
    {
	VideotecaLinkEntry entry = find (nome);
	if (entry == null)
	{
	    return null;
	}
	else
	{
	    return entry.getTipo ();
	}
    } // lookUp method

    // Imprime todos os Dvd's inseridos no sistema da Videoteca
    public void printOut ()
    {
	if (first != null)
	{
	    VideotecaLinkEntry where = first;
	    while (where != null)
	    {
		print (where.getNome (), 15);
		System.out.println (" " + where.getTipo ());
		System.out.println (" " + where.getRealizador ());
		System.out.println (" " + where.getAno ());
		System.out.println (" " + where.getDuracao ());
		where = where.getLink ();
	    }
	}
	else
	{
	    System.out.println ("Nao existem entradas no sistema da Videoteca.");
	}
    } // imprime o metodo

    // Imprime uma string à esquerda justificada no campo com a dimensao dada.
    protected void print (String s, int fieldSize)
    {
	if (s.length () >= fieldSize)
	{
	    System.out.print (s);
	}
	else
	{
	    StringBuffer padding = new StringBuffer ();

	    for (int count = 0 ; count < fieldSize - s.length () ; count++)
	    {
		padding.append (' ');
	    }
	    System.out.print (s + padding);
	}
    } // imprimir o metodo

    // Salvar a  Videoteca no fileNome.
    public void save ()
    {
	PrintWriter out;

	try
	{
	    out = new PrintWriter (new FileWriter (fileNome));
	}
	catch (IOException e)
	{
	    System.out.println ("Impossivel abrir " + fileNome + " para escrita.");
	    System.out.println ("Ficheiro nao foi gravado");
	    return;
	}

	VideotecaLinkEntry where = first;
	while (where != null)
	{
	    out.println (where.getNome ());
	    out.println (where.getTipo ());
	    out.println (where.getRealizador ());
	    out.println (where.getAno ());
	    out.println (where.getDuracao ());
	    where = where.getLink ();
	}

	out.close ();
    } // salvar o metodo

    // Recarrega a Videoteca do fileNome.
    public void load ()
    {
	BufferedReader in;
	String nome, tipo, realizador;
	int ano, duracao;

	try
	{
	    in = new BufferedReader (new FileReader (fileNome));
	}
	catch (FileNotFoundException e)
	{
	    System.out.println (fileNome + " nao encontrado");
	    return;
	}

	try
	{
	    nome = in.readLine ();
	    while (nome != null)
	    {
		tipo = in.readLine ();
		realizador = in.readLine ();
		ano = in.readLine ();
		duracao = in.readLine ();
		
		if (!enter (nome, tipo, realizador, ano, duracao))
		{
		    System.out.println ("Desculpe, o sistema da Videoteca tem muita memoria");
		    break;
		}

		nome = in.readLine ();
	    }
	}
	catch (IOException e)
	{
	    System.out.println ("Um I/O erro ocorreu durante a leitura do " + fileNome);
	}

	try
	{
	    in.close ();
	}
	catch (IOException e)
	{
	    System.out.println ("Um I/O erro ocorreu durante o encerramento do " + fileNome);
	}
    } // Recarrega o metodo
} /* VideotecaBook class */

Por favor ajudem-me falta me resolver este erro pra que o programa funcione e tenho de mostra lo na sexta, beijinhos