Problema "chato" ArrayList[RESOLVIDO]

Estou há alguns dias com um problema chato, que parece de solução simples…mas não consigo resolvê-lo. Tenho um cadastro de filmes bem simples que é gravado num arquivo .TXT, segue as minhas classes:
Classe Filme

public class Filme implements Comparable<Filme>{
private int codigo;
private String genero;
private String titulo;
private List<Ator> atoresPrin ;

    public List<Ator> getAtoresPrin() {
        return atoresPrin;
    }

    public void setAtoresPrin(List<Ator> atoresPrin) {
        this.atoresPrin = atoresPrin;
    }


    public String getTitulo() {
        return titulo;
    }

    public void setTitulo(String titulo) {
        this.titulo = titulo;
    }
  

    public int getCodigo() {
        return codigo;
    }

    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }

    public String getGenero() {
        return genero;
    }

    public void setGenero(String genero) {
        this.genero = genero;
    }

    public int compareTo(Filme outroFilme) {
        return this.titulo.compareTo(outroFilme.getTitulo());
    }

    @Override
    public String toString() {
      return  codigo + " " +genero + " " + titulo + " " + atoresPrin;
    }
  public String Subs(String titulo) {
        String padrao = "\\s";
        Pattern regPat = Pattern.compile(padrao);
        Matcher matcher = regPat.matcher(titulo);
        String res = matcher.replaceAll("_");
        return res;

    }
  public String Subs2(String titulo) {
        String padrao = "[";
        Pattern regPat = Pattern.compile(padrao);
        Matcher matcher = regPat.matcher(titulo);
        String res = matcher.replaceAll("_");
        return res;

    }
}

Classe Ator

public class Ator {
private String nome;

    public Ator(String nome) {
        this.nome = nome;
    }

   
    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    @Override
    public String toString() {
        return nome;
    }

}

Classe Filmes Util

public class FilmeUtil {

    private static List<Filme> listaFilmes = new ArrayList<Filme>();

    public static void addFilme(Filme filme) {

        listaFilmes.add(filme);
        System.out.println(listaFilmes);

    }

    public static List<Filme> getListaFilmes() {
        Collections.sort(listaFilmes);
        return listaFilmes;
    }

    public static void removeFilme(int index) {
        listaFilmes.remove(index);

    }

    public static void grava() throws IOException {
        File f = new File("c:\\newMovie.txt");
        f.delete();
        FileWriter fout = new FileWriter("c:\\newMovie.txt", true);
        PrintWriter pout = new PrintWriter(fout);
        for (Filme filme : listaFilmes) {
            pout.println(filme);
        }

        fout.close();
        pout.close();

    }
}

Método que Lista os Filmes

 public ListaFilmes() {
      initComponents();
      jListFilmes.setListData(FilmeUtil.getListaFilmes().toArray());

       
    }

Método que recupera os filmes (acredito que o problema seja aqui)

 private  void recuperaFilmes() {
        List<Ator> listaAtor = new ArrayList<Ator>();
          String vetor[] = null;
        try {
            FileReader fin = new FileReader("c:\\newMovie.txt");// não possui método para ler linha inteira
            BufferedReader buf = new BufferedReader(fin);
            String linha = buf.readLine();

            while (linha != null) {
              
                Filme f = new Filme();
                vetor = linha.split(" ");
                f.setCodigo(Integer.parseInt(vetor[0]));
                f.setGenero(vetor[1]);
                f.setTitulo(vetor[2]);
                listaAtor = new ArrayList<Ator>();
                listaAtor.add(new Ator(vetor[3]));
                listaAtor.add(new Ator(vetor[4]));
                f.setAtoresPrin(listaAtor);
                FilmeUtil.addFilme(f);
                linha = buf.readLine();
               
            }
            buf.close();
            fin.close();
        } catch (Exception e) {
            System.out.println("Erro:" + e.getMessage());
        }

    }

Método que faz a gravação (método da classe FilmesUtil)

 public static void grava() throws IOException {
        File f = new File("c:\\newMovie.txt");
        f.delete();
        FileWriter fout = new FileWriter("c:\\newMovie.txt", true);
        PrintWriter pout = new PrintWriter(fout);
        for (Filme filme : listaFilmes) {
            pout.println(filme);
        }

        fout.close();
        pout.close();

    }

PROBLEMA:

Muito Obrigado pela paciência pessoal.

Escreveu tanta coisa inútil, por que não escrever o erro também?
A imagem não carregou aqui, então não tem como saber qual o erro.

[quote=drsmachado]Escreveu tanta coisa inútil, por que não escrever o erro também?
A imagem não carregou aqui, então não tem como saber qual o erro.[/quote]

A imagem que exemplifica o problema, como não tenho certeza de onde está o erro acredido que NADA é inútil.
Obrigado

[quote=drsmachado]Escreveu tanta coisa inútil, por que não escrever o erro também?
A imagem não carregou aqui, então não tem como saber qual o erro.[/quote]

Não consegui ver a imagem também.

[quote=Jrmanzini][quote=drsmachado]Escreveu tanta coisa inútil, por que não escrever o erro também?
A imagem não carregou aqui, então não tem como saber qual o erro.[/quote]

A imagem que exemplifica o problema, como não tenho certeza de onde está o erro acredido que NADA é inútil.
Obrigado[/quote]
Camarada, qual a parte do “A IMAGEM NÃO CARREGOU” que você não entendeu?

“Camarada”, a imagem está carregando normal aqui…

http://i47.tinypic.com/25frna1.jpg

[quote=Jrmanzini]“Camarada”, a imagem está carregando normal aqui…

[/quote]
Então resolve o problema aí, espertão.
Odeio pessoas com cérebro de ameba, que não são capazes de entender que o ambiente em que estão não é o mesmo para todos os usuários do fórum. Que não lembram que existem firewalls e proxies em empresas dignas.

Provavelmente está sobrescrevendo o arquivo de forma errônea. Quando tu diz que é true, que irá sobrescrever, talvez não esteja pegando a última linha e começando dela. Faça um programa qualquer com a mesma lógica e o txt já criado. Faça ele apenas ler e veja se altera algo (não vai alterar). Depois, faça alterar usando a lógica que aplica atualmente e veja se dará o mesmo erro (deve dar).

Assim, tu comprova o problema e pensa em uma solução. É analisar esse PrintWriter com calma.

Valeu Nel, farei isso!
:smiley:

[quote=drsmachado][quote=Jrmanzini]“Camarada”, a imagem está carregando normal aqui…

[/quote]
Então resolve o problema aí, espertão.
Odeio pessoas com cérebro de ameba, que não são capazes de entender que o ambiente em que estão não é o mesmo para todos os usuários do fórum. Que não lembram que existem firewalls e proxies em empresas dignas.
[/quote]

Caramba mano o cara pediu ajuda, se a imagem não carregou no seu navegador poderia ter dito “poxa cara a imagem não carregou aqui para mim, tente posta-la de outra forma para que possamos ajuda-lo”, mas não vc veio logo falando que o cara postou coisa inútil, se vc odiasse tanto pessoas com cérebro de ameba deveria se odiar, ve ai se mais alguém falou algo que nem vc, isso é um fórum de ajuda não de pessoas espertalhonas que acham que só pq faz uma conexão com um banco de dados já é melhor que todo mundo, tenha mais humildade e ajude as pessoas que solicitam, ou se não sabe qual resolução passar não opine, simples assim! E outra vc disse que não são capazes de entender o ambiente, mais tipo ninguém está preocupado com o ambiente que vc está, simplesmente deveria ter falado que a imagem não apareceu e pronto, agora se vc se acha por trabalhar na área em uma empresa digna para mim vc não é digno de nada por falar assim com alguém, vc falou falou pq não ajudou o cara, eu só vim te responder na verdade li o código do cara e não pude encontrar um resolução mais como vc trabalha numa empresa digna COM CERTEZA SABE RESOLVER, PQ NÃO PASSOU A RESOLUÇÃO???

[quote=diegogm][quote=drsmachado][quote=Jrmanzini]“Camarada”, a imagem está carregando normal aqui…

[/quote]
Então resolve o problema aí, espertão.
Odeio pessoas com cérebro de ameba, que não são capazes de entender que o ambiente em que estão não é o mesmo para todos os usuários do fórum. Que não lembram que existem firewalls e proxies em empresas dignas.
[/quote]

Caramba mano o cara pediu ajuda, se a imagem não carregou no seu navegador poderia ter dito “poxa cara a imagem não carregou aqui para mim, tente posta-la de outra forma para que possamos ajuda-lo”, mas não vc veio logo falando que o cara postou coisa inútil, se vc odiasse tanto pessoas com cérebro de ameba deveria se odiar, ve ai se mais alguém falou algo que nem vc, isso é um fórum de ajuda não de pessoas espertalhonas que acham que só pq faz uma conexão com um banco de dados já é melhor que todo mundo, tenha mais humildade e ajude as pessoas que solicitam, ou se não sabe qual resolução passar não opine, simples assim! E outra vc disse que não são capazes de entender o ambiente, mais tipo ninguém está preocupado com o ambiente que vc está, simplesmente deveria ter falado que a imagem não apareceu e pronto, agora se vc se acha por trabalhar na área em uma empresa digna para mim vc não é digno de nada por falar assim com alguém, vc falou falou pq não ajudou o cara, eu só vim te responder na verdade li o código do cara e não pude encontrar um resolução mais como vc trabalha numa empresa digna COM CERTEZA SABE RESOLVER, PQ NÃO PASSOU A RESOLUÇÃO??? [/quote]

Perfeito Diego, ainda bem que caras como esse não são maioria aqui.

[quote=Jrmanzini][quote=diegogm][quote=drsmachado][quote=Jrmanzini]“Camarada”, a imagem está carregando normal aqui…

[/quote]
Então resolve o problema aí, espertão.
Odeio pessoas com cérebro de ameba, que não são capazes de entender que o ambiente em que estão não é o mesmo para todos os usuários do fórum. Que não lembram que existem firewalls e proxies em empresas dignas.
[/quote]

Caramba mano o cara pediu ajuda, se a imagem não carregou no seu navegador poderia ter dito “poxa cara a imagem não carregou aqui para mim, tente posta-la de outra forma para que possamos ajuda-lo”, mas não vc veio logo falando que o cara postou coisa inútil, se vc odiasse tanto pessoas com cérebro de ameba deveria se odiar, ve ai se mais alguém falou algo que nem vc, isso é um fórum de ajuda não de pessoas espertalhonas que acham que só pq faz uma conexão com um banco de dados já é melhor que todo mundo, tenha mais humildade e ajude as pessoas que solicitam, ou se não sabe qual resolução passar não opine, simples assim! E outra vc disse que não são capazes de entender o ambiente, mais tipo ninguém está preocupado com o ambiente que vc está, simplesmente deveria ter falado que a imagem não apareceu e pronto, agora se vc se acha por trabalhar na área em uma empresa digna para mim vc não é digno de nada por falar assim com alguém, vc falou falou pq não ajudou o cara, eu só vim te responder na verdade li o código do cara e não pude encontrar um resolução mais como vc trabalha numa empresa digna COM CERTEZA SABE RESOLVER, PQ NÃO PASSOU A RESOLUÇÃO??? [/quote]

Perfeito Diego, ainda bem que caras como esse não são maioria aqui.[/quote]

Verdade JrManzini, esse cara ai fala tanto mais não sabe nada, quando eu não sei uma coisa chego e falo e na verdade nem posto nada criticando algo. Ahhh e só cara complementar a imagem apareceu perfeitamente aqui na minha empresa que tbm é digna" rsrsrsrs, boa sorte cara vai em frente que vc vai conquistar muito!

[quote=diegogm][quote=drsmachado][quote=Jrmanzini]“Camarada”, a imagem está carregando normal aqui…

[/quote]
Então resolve o problema aí, espertão.
Odeio pessoas com cérebro de ameba, que não são capazes de entender que o ambiente em que estão não é o mesmo para todos os usuários do fórum. Que não lembram que existem firewalls e proxies em empresas dignas.
[/quote]

Caramba mano o cara pediu ajuda, se a imagem não carregou no seu navegador poderia ter dito “poxa cara a imagem não carregou aqui para mim, tente posta-la de outra forma para que possamos ajuda-lo”, mas não vc veio logo falando que o cara postou coisa inútil, se vc odiasse tanto pessoas com cérebro de ameba deveria se odiar, ve ai se mais alguém falou algo que nem vc, isso é um fórum de ajuda não de pessoas espertalhonas que acham que só pq faz uma conexão com um banco de dados já é melhor que todo mundo, tenha mais humildade e ajude as pessoas que solicitam, ou se não sabe qual resolução passar não opine, simples assim! E outra vc disse que não são capazes de entender o ambiente, mais tipo ninguém está preocupado com o ambiente que vc está, simplesmente deveria ter falado que a imagem não apareceu e pronto, agora se vc se acha por trabalhar na área em uma empresa digna para mim vc não é digno de nada por falar assim com alguém, vc falou falou pq não ajudou o cara, eu só vim te responder na verdade li o código do cara e não pude encontrar um resolução mais como vc trabalha numa empresa digna COM CERTEZA SABE RESOLVER, PQ NÃO PASSOU A RESOLUÇÃO??? [/quote]
E você é quem?
Se você não reparou, a minha primeira resposta estava bem clara, disse que a imagem não carregou, mas o autor do tópico, “humildemente” respondeu “Aqui a imagem carregou certinho”.
Não tenho culpa se o autor do tópico ficou com preguicinha de copiar e colar o erro ou de digitar a mensagem.
Aliás, como muito bem colocado por você, que eu nem sei que é ou qual merecimento possui para ousar falar da minha pessoa, isso é um fórum, as pessoas vem aqui atrás de ajuda e de código pronto e de uma série de coisas que provavelmente você já viu. Acontece que querer ajuda e permitir aos demais que o ajudem são coisas distintas que, pelo que posso ver, não é algo que o autor do tópico consiga discernir.
E repito o que disse, sem que a brilhante solução de colocar uma imagem para representar o erro seja factível a todos (ou seja, caso a imagem não carregue, por exemplo), todo o código postado é inutil.

[quote=drsmachado][quote=diegogm][quote=drsmachado][quote=Jrmanzini]“Camarada”, a imagem está carregando normal aqui…

[/quote]
Então resolve o problema aí, espertão.
Odeio pessoas com cérebro de ameba, que não são capazes de entender que o ambiente em que estão não é o mesmo para todos os usuários do fórum. Que não lembram que existem firewalls e proxies em empresas dignas.
[/quote]

Caramba mano o cara pediu ajuda, se a imagem não carregou no seu navegador poderia ter dito “poxa cara a imagem não carregou aqui para mim, tente posta-la de outra forma para que possamos ajuda-lo”, mas não vc veio logo falando que o cara postou coisa inútil, se vc odiasse tanto pessoas com cérebro de ameba deveria se odiar, ve ai se mais alguém falou algo que nem vc, isso é um fórum de ajuda não de pessoas espertalhonas que acham que só pq faz uma conexão com um banco de dados já é melhor que todo mundo, tenha mais humildade e ajude as pessoas que solicitam, ou se não sabe qual resolução passar não opine, simples assim! E outra vc disse que não são capazes de entender o ambiente, mais tipo ninguém está preocupado com o ambiente que vc está, simplesmente deveria ter falado que a imagem não apareceu e pronto, agora se vc se acha por trabalhar na área em uma empresa digna para mim vc não é digno de nada por falar assim com alguém, vc falou falou pq não ajudou o cara, eu só vim te responder na verdade li o código do cara e não pude encontrar um resolução mais como vc trabalha numa empresa digna COM CERTEZA SABE RESOLVER, PQ NÃO PASSOU A RESOLUÇÃO??? [/quote]
E você é quem?
Se você não reparou, a minha primeira resposta estava bem clara, disse que a imagem não carregou, mas o autor do tópico, “humildemente” respondeu “Aqui a imagem carregou certinho”.
Não tenho culpa se o autor do tópico ficou com preguicinha de copiar e colar o erro ou de digitar a mensagem.
Aliás, como muito bem colocado por você, que eu nem sei que é ou qual merecimento possui para ousar falar da minha pessoa, isso é um fórum, as pessoas vem aqui atrás de ajuda e de código pronto e de uma série de coisas que provavelmente você já viu. Acontece que querer ajuda e permitir aos demais que o ajudem são coisas distintas que, pelo que posso ver, não é algo que o autor do tópico consiga discernir.
E repito o que disse, sem que a brilhante solução de colocar uma imagem para representar o erro seja factível a todos (ou seja, caso a imagem não carregue, por exemplo), todo o código postado é inutil.[/quote]

Prazer Diego.
Eu reparei sim que vc disse que a imagem não estava carregando, porem antes disso vc disse o que? Que tudo aquilo era inútil, precisava desse comentário? Acredito que não, e como vc disse o autor do tópico respondeu humildemente a vc, então nada mais justo do que ser humilde tbm, mais vc com arrogância chegou falando "Camarada, qual a parte do “A IMAGEM NÃO CARREGOU” que você não entendeu? " , cara pra que essa arrogância toda, vc é superior a alguém aqui, simplesmente vc deveria ter respondido a imagem não carregou só, como vc disse as pessoas estão aqui para ver códigos prontos, solucionar erros e não receber criticas de uma pessoa que nem ajudou ela. Cara não seja tão arrogante, aposto que vc não gostaria de ter recebido a mesma resposta, vc diz sim mais no momento não aposto!! Cara vc não ajudou em nada o cara, nem um código vc postou exemplificando algo, se não sabe não comenta nada, eu só comentei aqui pq achei injusto o que vc disse, pois já fizeram o mesmo comigo quando tive uma dúvida, reflita…vc não é o melhor do mundo!

Rapaziada anda tomando muito café pelo jeito. A única parte em que eu acho que o machado exagerou, foi:

Mas confesso que ao mesmo tempo dei um sorriso de lado rs…eu também entendo o ponto de vista do machado, assim como do Diego.
Diego, ele não foi ou quis ser prepotente ou achar melhor que alguém, é que ele disse duas vezes que a imagem não carregava no ambiente dele, logo, o ideal seria que o criador do tópico tivesse postado tudo em texto e a imagem, pois quem não conseguir ver a imagem, terá o texto como base.

Mas vamos nos acalmar e focar em resolver o problema do colega que abriu o tópico.
E galera, menos café hein rsrs

Se ele não esta vendo a imagem, bastava informar e caso o autor do tópico não solucionasse o problema, apenas não precisava mais participar deste post.

Se entendi o único problema é que ele esta, incrementado a quantidade de “,” e “[” “]”.

é isso ???

Para evitar transtornos como isso, postem imagens usando a opção de Attachments do GUJ.

O botão está logo abaixo do local onde você escreve o texto.

Provavelmente, na hora de carregar o arquivo, você está carregando também o [ do ator. Por exemplo, ao invés de ler o nome dele como “Frodo”, você está lendo “[Frodo,”
Seu código deve tratar isso de maneira adequada.

Um depurador teria te mostrado facilmente o problema. Você por acaso sabe usar o depurador?

Fiz como o nel falou e alterei o método que faz a gravação…

“Can’t you see the image?
Talk to the system administrator”