Programación General > Java

 leer

(1/1)

pipelin85:
hola quisiera saber como hacer para que con scanner o con buffer el compilador lea hasta que no encuentre mas datos
ejemplo
6 7
45 67
y que en 67 termine de leer y pase a hacer lo siguiente que le diga :oops:

shadow_rev:
Según lo que entiendo del problema, lo que quieres es que mientras lee un archivo de texto plano, si encuentra un 67, se detenga la lectura del archivo, no ?

Esto es lo que yo haría:

--- Código: Java ---// reader es el objeto de tipo BufferedReader, linea_actual es un Stringwhile((linea_actual = reader.readLine()) != null) {    // ...    // La función chequeo busca el 67 y retorna true si lo halla    if(chequeo(linea_actual)) {        break;    }    // ...} O algo así. Scanner nunca lo he usado.

:suerte:

silverfox:
Hola...

En el caso de una lectura normal (no la clase Scanner), tienes un método en todos los InputStream que es available, que te indica cuántos bytes hay disponibles para lectura. En el caso en el que quieras leer todo lo que hay y pasar a otra cosa, puedes decirle que te lea todos los bytes disponibles en ese momento:


--- Código: Text --- byte[] lectura = new byte [ myInputStream.available() ] ;myInputStream.read(lectura);  
En el caso del Scanner, va por tokens, lo que quiere decir que tienes que definir un separador (el normal es el espacio blanco).
Utiliza un bucle while (myScanner.hasNext()) para ir recogiendo los tokens, cuando hasNext()== false, ya habrás leído todo lo que hay disponible en el Scanner.



Espero que te sirva.

Un saludo.

Navegación

[0] Índice de Mensajes

Ir a la versión completa