Adicionar linhas ao arquivo texto

6 respostas
levimendes

Olá pessoal, estou com o seguinte problema, criei um arquivo texto e salvo algumas informações nele, porém quando posteriormente executo o sistema e salvo outras informações, as informações que foram salvas anteriormente são sobrescrica pelas novas, como faço para resolver este problema :?: :?: :?: :?: :?:

6 Respostas

renamed

Qual classe vc está usando para escrever no arquivo? A classe PrintWriter, por exemplo, aceita como segundo parâmetro um boolean que deve ser passado como true para fazer o que vc gostaria.

B

Você chamou o close() ou o flush() do teu *Writer para gravar o arquivo no disco?

levimendes

close()

evertonsilvagomesjav

levimendes o que esta acontecendo provavelmente é o seguinte:

Na hora que vc instancia um objeto FileWriter dessa forma:

fileWriter = new FileWriter(this.file, true); // você nao colocou true no segundo argumento, esse true e para o append...
ArchV

Outra possível solução:

Faça a leitura total do arquivo guardando isso em um ArrayList de String, cada linha em um índice, posteriormente quando quiser escrever novas informações, escreva o seu ArrayList (crie um for para percorrer o tamanho do ArrayList , size()) + as novas informações.

M

Outra possível solução:

Faça a leitura total do arquivo guardando isso em um ArrayList de String, cada linha em um índice, posteriormente quando quiser escrever novas informações, escreva o seu ArrayList (crie um for para percorrer o tamanho do ArrayList , size()) + as novas informações.
É uma possível solução, mas o problema nessa caso é o desempenho (ler todo o arquivo, armazená-lo em um ArrayList, adicionar novos dados e escrever tudo de novo no arquivo). O método com o append de Writer é mais simples.

Criado 18 de janeiro de 2010
Ultima resposta 19 de jan. de 2010
Respostas 6
Participantes 6