Teste com manipulação de arquivos

Bom…já faz uns dois dias que estou tentado aprender o funcionamento de manipulação de arquivos, confesso que já aprendi muito.
A questão é a seguinte:

Crio um instancia da classe java.io.File para representar o caminho até o arquivo.
Depois crio um instancia da classe java.io.FileWriter e java.io.PrintWriter para escrever no arquivo. Até aqui tudo bem…
O problema está quando quero ler do arquivo tudo quanto escrevi…
Vou passar parte do meu código aqui…(se precisarem dele todo eu posto)


try
{
    FileWriter writer = new FileWriter("teste.txt", true);
    PrintWriter saida = new PrintWriter(writer, true);
    FileReader reader = new FileReader("teste.txt"); 
    BufferedReader leitor = new BufferedReader(reader);

    //Escrevendo no arquivo
    saida.println("Thiago Dantas, ");
    saida.println("estudante da Faculdade Sumare");
    		
    //Fechando o arquivo
    saida.close();
    writer.close();
    		
    //Imprime as linhas do arquivo
    String linha = null;
    while((linha = leitor.readLine())) 
    {
        System.out.println("Linha: " + linha);
     }
     		
     //Fechando o arquivo
     leitor.close();
     reader.close();
}

catch (IOException e)
{
    System.out.println("Erro" + e);
}

E o erro que dá é o seguinte

'catch' without 'try'

Peço que me ajudem…

Vlw

Thiago Dantas

Lembrando que esse problema só deu depois que instanciei a classe java.io.FileReader e java.io.BufferedReader.

num tem nenhum try pra cima do seu codigo ae que vc esqueceu de capturar não?! :idea:

entaum…
pelo erro, tentei remover o try/catch…
bem funcionou…soh que no bloco de comando:

String linha = null;
while((linha = leitor.readLine())) 
{
    System.out.println("Linha: " + linha);
}

aparece um erro de incompatibilidade de tipos…

jah tentei fazer um casting…mas ainda sim naum funcionou, tipo

while((linha = (String) leitor.readLine())) 
{
    System.out.println("Linha: " + linha);
}

se quiser o programa por inteiro para vc dar uma olhada…eu posto

Thiago Dantas

String linha = null; while((linha = leitor.readLine())) { System.out.println("Linha: " + linha); }

Segundo http://www.guj.com.br/java.artigo.13.1.guj, esse código funciona!

:idea:

Thiago, teu problema tá no while porque essa condição espera um tipo boolean e você ta querendo comparar boolean com String.
String linha = null;
while((linha = leitor.readLine()) != null)
{
System.out.println("Linha: " + linha);
}

tenta colocar esse diferente de null aí…

É isso ae…
Fiz o while de outro jeito…q dah na mesma com o q vc me passou…e funcionou…

Vlw galera…
Qualquer dúvida chamo vcs…hehehehhe

Thiago Dantas

Seguinte galera…
todo meu código funciona se jah existir um arquivo, cujo caminha especifiquei para classe File…
mas se eu quiser criar um arquivo, e tipo salvar ele no desktop…???
procurei em artigos, tutoriais, e nada…naum consegui achar nada…

alguém me pode ajudar nessa???

Thiago Dantas