Arquivo texto, acentuação

Pessoal,

Deve ter 2 anos que não programo nada … resolvi voltar a estudar JAVA, estou extremamente enferrujado.
Pode ser um besteira mas se alguém puder ajudar …

Escrevi uma classe aqui para manipular um arquivo texto.
Só pra ler as linhas de um arquivo …


import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;


public class Arquivo
{
	File arquivo = new File("d:/base.txt");

	FileWriter escritor;
	PrintWriter escreve;

	FileReader leitor;
	BufferedReader le_arq;


	public Arquivo() throws IOException
	{
		escritor = new FileWriter(arquivo,true);
		escreve = new PrintWriter(escritor, true);

		leitor = new FileReader(arquivo);
		le_arq= new BufferedReader(leitor);
	}

	public void addRegistro(String texto)
	{
		escreve.write(texto);
	}

	public String getLine() throws IOException
	{
		String linha = le_arq.readLine();
		return linha;
	}

	public void fecha_arquivo() throws IOException
	{
		escreve.close();
		escritor.close();
	}

        public static void main(String[] args) throws IOException {

        String saida;
        Arquivo arq = new Arquivo();
        saida = arq.getLine();
        System.out.println(saida);

    }
}// fim da classe arquivo

A classe sempre criar um arquivo que aponta para d:/base.txt.
No [color=red]main[/color] para testar eu apenas chamo uma linha pelo readline() mas na hora de
exibir, se a linha no arquivo texto tiver qualquer tipo de acentuação sai um quadrado ou um símbolo estranho
no lugar . . .

linha no arquivo :
Patrícia Clóvis João Manuel Caçamba

saida :
Patr�cia Cl�vis Jo�o Manuel Ca�amba

Sugestões ?
Desconfio de algum problema com o readline() mas não tenho certeza …

Cara isso e questao do “charset=”
que pode ser UTF-8 ou ISO-8859-1
Olhe isso aki:
http://www.guj.com.br/posts/list/149113.java
vlw
abs

Eu já fiz / usei este tipo de classe antes u nunca ouvi nada a respeito …
vou dar uma olhada no assunto e se conseguir descobrir o problema posto o resultado.

Concordo com o colega.

Só outro adendo. Hoje em dia usa-se a classe Scanner para ler arquivos. Por exemplo:

Scanner scan = new Scanner("d:/base.txt"); while (scan.hasNextLines()) { System.out.println(scan.nextLine()); } scan.close();

testei a classe [color=blue]Scaner[/color] e com ela meu programa não leu linha nenhuma do arquivo …
muito estranho …

resolvi abrir o arquivo no bloco de notas e salvar na codificação UTF-8 … funcionou nas duas versões,
com o bufferedReader e com Scanner.

Cara, tô até um pouco surpreso… nunca tive problemas com a codificação do texto, primeira vez que acontece.
É alguma coisa do SO será ?