Estoy tratando de leer un archivo de texto línea por línea usando InputStream desde el directorio de activos en Android.
Quiero convertir InputStream en un BufferedReader para poder usar readLine ().
Tengo el siguiente código:
InputStream is;
is = myContext.getAssets().open ("file.txt");
BufferedReader br = new BufferedReader (is);
La tercera línea descarta el siguiente error:
Múltiples marcadores en esta línea. El constructor BufferedReader (InputStream) no está definido.
Lo que estoy tratando de hacer en C ++ sería algo como:
StreamReader file;
file = File.OpenText ("file.txt");
line = file.ReadLine();
line = file.ReadLine();
...
¿Qué estoy haciendo mal o cómo debo hacerlo? ¡Gracias!
java
android
inputstream
readline
bufferedreader
karse23
fuente
fuente
BufferedReader br = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8));
agregado en Java 7Un constructor BufferedReader toma un lector como argumento, no un InputStream. Primero debe crear un lector a partir de su transmisión, así:
Preferiblemente, también proporciona un Charset o un nombre de codificación de caracteres para el constructor StreamReader. Como una secuencia solo proporciona bytes, convertirlos a texto significa que la codificación debe ser conocida. Si no lo especifica, se asume el valor predeterminado del sistema.
fuente
fuente