Leer fichero con clase Scanner y Java

Como ya vimos en mi anterior entrada sobre cómo leer un fichero de texto con Java, este es un proceso un tanto largo y necesitamos de bastantes clases y código Leer y guardar un archivo de texto en JAVA.


Pues bien, esto se acabó con la maravillosa clase de la API de Java Scanner, con la cual podemos realizar lecturas de flujos de texto tanto por entrada estándar como desde un fichero. A continuación tenemos el ejercicio realizado con Scanner:
import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
class Main {
    public static void main(String[] args) throws FileNotFoundException{
        Scanner sc = new Scanner(new File("input"));
        while(sc.hasNextLine()) {
            System.out.println(sc.nextLine());
        }
        sc.close();
    }
}
Además, esta clase permite leer cualquier otro tipo de datos como int, float, etcétera. Tan solo es utilizar las funciones de las que dispone. A continuación podemos ver como podríamos leer números enteros desde la entrada estándar y esta clase ya se encargará de convertirlos a dicho tipo.
import java.util.Scanner;
class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int numero1 = sc.nextInt();
        int numero2 = sc.nextInt();
        System.out.println(numero1 + numero2);
    }
}
Esta vez, al constructor le pasamos un objeto de tipo InputStream que obtenemos de System.in, y tan solo debemos llamar al método nextInt() el cual se encargará de leer por entrada estándar el número entero y devolver un tipo primitivo int, con el que podremos hacer operaciones posteriores.

La mini calculadora con 4 líneas de código mola ¿verdad?.

Comentarios

Entradas populares de este blog

Autocompletado de codigo en Sublime Text

Compilar y ejecutar JAVA desde Notepad++

Compilar y ejecutar JAVA desde Sublime Text