Manipulando arquivos

Pessoal é o seguinte… esse código que verão abaixo eu peguei aki no GUJ mesmo… Estou tentando ler dados de um arquivo que eu criei… esse arquivo mantem registros sobre CPF válidos e inválidos… a criação do arquivo estou conseguindo fazer… mas na hr de ler ele está me dando o seguinte erro:

UsaUtilitarios.java [21:1] incompatible types found : java.lang.String required: boolean while((linha = leitor.readLine())) {

Abaixo vou colocar o código que estou utilizando para a gravação e leitura.
Gravação

validos += cpf+"
";
            try {
            File Diretorio = new File("C:válidos.txt");
            FileWriter writer_validos = new FileWriter("C:válidos.doc");
            PrintWriter saida_validos = new PrintWriter(writer_validos,true);
            saida_validos.println(validos);
            saida_validos.close();
            writer_validos.close();
            }
            catch(Exception e){
                System.out.println(e.getMessage());
            }

Leitura

FileReader reader = new FileReader(new File("C:válidos.doc"));
        BufferedReader leitor = new BufferedReader(reader);
        
        String linha = null;
        while((linha = leitor.readLine())) {
            System.out.println("Linha: " + linha);
        }
        leitor.close();
        reader.close();

O que devo fazer para arrumar esse erro??
Obrigado

faça a expressão retornar um valor boolean que é o que deve ser utilizado no while:

while ((linha=leitor.readLine())!=null)

De acordo com o erro q o compiler está acusando é o seguinte:

O método readLine() retorna um string como resultado da leitura, mas a instrução while requer um boolean como resultado da expressão (a condição do laço)…

Tente isto (o java não permite atribuição em linha de instrução)

String linha = leitor.readLine();

while (linha != null) {

     /* faz algo com linha */

     linha = leitor.readLine();

}

Espero que ajude.

Po!!! :shock: Viajei!!!
É claro que o java permite sim, atribuição em linha de instrução…

O marciolx te deu a solução… tá correto… testei, funciona!! desculpe!