Membro desde: 13/12/2007 10:09:22
Mensagens: 269
Offline
Pessoal, estou usando o FileWriter/BufferedWriter e FileReader/BufferedReader para escrever em um .txt, mas nao acho nenhuma funcao que remova uma linha!
Também preciso que os registros subsequentes sejam jogados pra cima. Por ex:
Joao
Maria
Pedro
Tiago
Se eu apagar Maria, deve ficar assim:
Joao
Pedro
Tiago
Alguem tem alguma ideia?
Mestrando em Ciência da Computação - UNICAMP
SCJP 6
http://joaosavio.wordpress.com
Membro desde: 24/04/2008 16:10:55
Mensagens: 1532
Localização: Terra (maior parte do tempo)
Online
Você está lidando com arquivos do tipo sequencial, ou seja, não são flexiveis neste ponto.
Alternativas:
a) Jogar os dados para memória (ArrayList, etc...) excluir o item que interessar e gravar os dados novamente em cima do arquivo anterior.
b) Criar um arquivo B, ler o arquivo A e incluir no arquivo B ignorando o item a ser "excluido"; quando terminar a leitura do arquivo A feche-o e exclua-o, logo depois renomeie o arquivo B para A e pronto.