Java I/O How to - Read an int from Standard Input with BufferedReader








Question

We would like to know how to read an int from Standard Input with BufferedReader.

Answer

//from   w  w  w.  j a  va 2s  .  c o m
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
  public static void main(String[] ap) {
    String line = null;
    int val = 0;
    try {
      BufferedReader is = new BufferedReader(new InputStreamReader(System.in));
      line = is.readLine();
      val = Integer.parseInt(line);
    } catch (NumberFormatException ex) {
      System.err.println("Not a valid number: " + line);
    } catch (IOException e) {
      System.err.println("Unexpected IO ERROR: " + e);
    }
    System.out.println("I read this number: " + val);
  }
}

The code above generates the following result.