Saltar al contenido

Java – Leer línea usando InputStream

Posterior a de una larga selección de información pudimos solucionar esta escollo que pueden tener algunos los usuarios. Te ofrecemos la respuesta y nuestro objetivo es resultarte de gran ayuda.

Solución:

Deberías usar BufferedReader con FileInputStreamReader si lees de un archivo

BufferedReader reader = new BufferedReader(new FileInputStreamReader(pathToFile));

o con InputStreamReader si lees de cualquier otro InputStream

BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));

Luego usa su método readLine() en un bucle

while(reader.ready()) 
     String line = reader.readLine();

Pero si realmente amas InputStream, entonces puedes usar un ciclo como este

InputStream stream; 
char c; 
String s = ""; 
do 
   c = stream.read(); 
   if (c == 'n')
      break; 
   s += c + "";
 while (c != -1);

Es posible leer el flujo de entrada con BufferedReader y con Scanner. Si no tiene una buena razón, es mejor usar BufferedRead (para una amplia discusión BufferedReader vs Scanner ver.

También sugeriría usar Buffered Reader con try-with-resources para asegurarse de que el recurso se cierre automáticamente. ver

Ver el siguiente código

try (BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) 
        while (reader.ready()) 
            String line = reader.readLine();
            System.out.println(line);
        
    catch (FileNotFoundException e) 
        // TODO Auto-generated catch block
        e.printStackTrace();
     catch (IOException e) 
        // TODO Auto-generated catch block
        e.printStackTrace();
    

Finalizando este artículo puedes encontrar los informes de otros creadores, tú también eres capaz mostrar el tuyo si lo crees conveniente.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *