Se o InputStreamReader converte byte para char o método .read() não deveria retornar um char ao invés de um int? Como devo fazer para que se retorne um char já convertido corretamente? Ou seja, gostaria de ler um arquivo letra por letra.
Se o InputStreamReader converte byte para char o método .read() não deveria retornar um char ao invés de um int? Como devo fazer para que se retorne um char já convertido corretamente? Ou seja, gostaria de ler um arquivo letra por letra.
Fala Felipe, tudo bem ?
É possível obter o char a partir do inteiro retornado fazendo um cast =).
public static void main(String[] args){
InputStream inputStream = new FileInputStream("seu.txt");
InputStreamReader reader = new InputStreamReader(inputStream);
int i = reader.read();
while(i != -1) {
char chr = (char) i;
sysout(chr);
i = reader.read();
}
reader.close();
}
Espero ter ajudado. Abraço!