Charset & BufferedReader

Seguinte, tenho um arquivo escrito em bom portugues, ou seja, todo acentuado. Quando leio o arquivo, porem, os acentos vem todos zuados ( aparecem caracteres nada a ver no lugar ). Pelo que vi na documentacao, precisava usar algum reader com suporte a charsets.

Tentei algumas variantes de codigo, mas nada de sucesso ate agora. Alguns codigos que ja tentei foram:

BufferedReader r = new BufferedReader(new InputStreamReader(System.in, "ISO-8859-1"));

// forma 2
BufferedReader r = new BufferedReader(new InputStreamReader(System.in, Charset.forName("ISO-8859-1")));

ate com FileInputStream eu ja tentei, mas nada de os acentos ficarem corretos ate agora.

Alguma ideia?
ps: usei System.in pra nao ficar criando instancia de FileInputStream. Executo o programa usando assim:

java Teste < meuarquivo

valeu
Rafael

o problema eh o msdos ou o shell do linux

voce tentou fazendo FileInputStream mesmo?

o q o paulo falou esta certo pq o codigo primeiro de todos q vc mandou eu sempre uso e da na boa

gui

Tentei sim. Posso estar fazendo da maneira errada, mas testei assim:

BufferedReader r = new BufferedReader(new InputStreamReader(new FileInputStream("meu.arquivo"), "ISO-8859-1")); 

Rafael

Ta, mas se eu dou um cat meu.arquivo, os acentos aparecem corretamente, entao nao pode ter o terminal ou o shell, senao zuava tmb.

Alguma outra forma de fazer isso?

Rafael

ok, ok, testei em um outro servidor e funcionou. Era realmente o terminal.

Vou ver se configuro direito a outar maquina :slight_smile:

valuez

Rafael