40.    System.in

Conecta con la entrada estándar de la aplicación, permitiendo leer de ella.

Lo más típico es leer líneas para analizarlas

class SystemIn

import java.io.*;

 

public class SystemIn {

  public static void main(String[] argumentos)

        throws Exception {

    BufferedReader reader =

      new BufferedReader(

          new InputStreamReader(System.in));

    String linea = reader.readLine();

    int nLineas = 1;

    while (linea != null) {

      System.out.println("t" + nLineas + ": " + linea);

      linea = reader.readLine();

      nLineas++;

    }

  }

}

$ java SystemIn

una

        1: una

dos

        2: dos

y tres

        3: y tres

^Z

 

También se puede usar un analizador lexicográfico. Ver “Scanner”.

Desde el sistema operativo, es fácil para el usuario redirigir la entrada desde un fichero

$ java SystemIn < entrada.txt

 

y también es posible cambiar la entrada desde dentro del programa

    InputStream entrada = new FileInputStream("entrada.txt");

    System.setIn(entrada);

 

La definición en la clase System es así:

public final static InputStream in;

Temas relacionados

Las Bibliotecas de Java