Mads Mobæk Mads Mobæk - 1 month ago 20
Java Question

Scanner vs. BufferedReader

As far I know, the two most common methods of reading character-based data from a file in Java is using

Scanner
or
BufferedReader
. I also know that the
BufferedReader
read files efficiently by using a buffer to avoid physical disk operations. My questions are:


  • Does
    Scanner
    performs as well as
    BufferedReader
    ?

  • Why would you choose
    Scanner
    over
    BufferedReader
    or vice versa?


Answer

Scanner is used for parsing tokens from the contents of the stream while BufferedReader just reads the stream and does not do any special parsing.

In fact you can pass a BufferedReader to a scanner as the source of characters to parse.