Olá!
Alguém poderia socorrer este iniciante na linguagem:
Por que o código abaixo não escreve no arquivo de saida todas as linhas do primeiro arquivo (que no caso escrevi apenas duas linhas para texte)?
importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;classLerEscreverArquivoTeste2{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderleia=newBufferedReader(newFileReader("arquivo_leitura.txt"));Stringarmazena=null,s=null;try{while((s=leia.readLine())!=null){armazena=s;System.out.println(s);}System.out.println("leitura com sucesso");leia.close();}catch(Exceptione){System.out.println("Exceção 01");}try{BufferedWriterescreve=newBufferedWriter(newFileWriter("arquivo_escrita.txt"));escreve.write(armazena);escreve.newLine();escreve.close();}catch(Exceptione){System.out.println("Exceção 02");}}}
Obrigado pela dica de formatação no envio da dúlvida.
Mas o tutorial não trata um detalhe que é o que está me dificultado:
O de fazer com que o que está em uma dada variável que foi alimentada pelo que foi lida em um arquivo, seja levado ao arquivo de saida.
No exemplo do tutorial a escrita é feita na mão.
Poderia me ajudar nisso???
romarcio
Obrigado por editar seu post.
Você precisa ir concatenando na variável cada nova linha lida.
Tenta assim:
try{while((s=leia.readLine())!=null){armazena=armazena+"\n"+s; System.out.println(s); }System.out.println("leitura com sucesso"); leia.close(); }
M
MagnoNunes
Obrigado! Assim dá certo!
Mas se não for abuso só mais uma dúvida: eu consigo ler todo o arquivo depois escrev-lo todo?
Porque se eu quiser tratá-lo (mudar a ordem por exemplo), o ideal seria desta forma. Estou correto?
R
rafaelpteixeira
MagnoNunes:
Obrigado! Assim dá certo!
Mas se não for abuso só mais uma dúvida: eu consigo ler todo o arquivo depois escrev-lo todo?
Porque se eu quiser tratá-lo (mudar a ordem por exemplo), o ideal seria desta forma. Estou correto?
Na verdade o ideal é você ler a linha salvar os dados em variáveis, tratá-los e escrever no outro arquivo.
você deve ter um método para leitura, um para escrita e outro para limpar as variáveis.