Estou tentando ler um arquivo de texto linha por linha usando InputStream no diretório de ativos no Android.
Eu quero converter o InputStream em um BufferedReader para poder usar o readLine ().
Eu tenho o seguinte código:
InputStream is;
is = myContext.getAssets().open ("file.txt");
BufferedReader br = new BufferedReader (is);
A terceira linha descarta o seguinte erro:
Vários marcadores nesta linha O construtor BufferedReader (InputStream) não está localizado.
O que estou tentando fazer em C ++ seria algo como:
StreamReader file;
file = File.OpenText ("file.txt");
line = file.ReadLine();
line = file.ReadLine();
...
O que estou fazendo de errado ou como devo fazer isso? Obrigado!
java
android
inputstream
readline
bufferedreader
karse23
fonte
fonte
BufferedReader br = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8));
adicionado em Java 7Um construtor BufferedReader usa um leitor como argumento, não um InputStream. Você deve primeiro criar um Reader a partir do seu fluxo, da seguinte forma:
De preferência, você também fornece um nome de codificação de caractere ou de caractere ao construtor StreamReader. Como um fluxo fornece apenas bytes, convertê-los em texto significa que a codificação deve ser conhecida. Se você não o especificar, o padrão do sistema será assumido.
fonte
fonte