Convert Reader into BufferedReader in Java using Apache Commons IO

Tags: Convert IOUtils Apache Commons Apache Commons IO Reader FileReader BufferedReader

In this Java tutorial we learn how to use the IOUtils utility class in Apache Commons IO to convert a Reader object into a BufferedReader object in Java.

How to add Apache Commons IO library to your Java project

To use the Apache Commons IO library in the Gradle build project, add the following dependency into the build.gradle file.

implementation 'commons-io:commons-io:2.8.0'

To use the Apache Commons IO library in the Maven build project, add the following dependency into the pom.xml file.

<dependency>
  <groupId>commons-io</groupId>
  <artifactId>commons-io</artifactId>
  <version>2.8.0</version>
</dependency>

To have more information about the Apache Commons IO library you can visit the library home page at commons.apache.org/proper/commons-io/

How to convert Reader into BufferedReader

For example, we have the data.txt file at D:\Data\data.txt with the content as below.

simplesolution.dev

The application below reads the above text file into a Reader object and then converts it to a BufferedReader object.

ConvertToBufferedReader.java

import org.apache.commons.io.IOUtils;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;

public class ConvertToBufferedReader {
    public static void main(String... args) {
        try {
            Reader reader = new FileReader("D:\\Data\\data.txt");

            BufferedReader bufferedReader = IOUtils.buffer(reader);
            String value;
            while((value = bufferedReader.readLine()) != null) {
                System.out.println(value);
            }
            IOUtils.close(bufferedReader);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
The output is:
simplesolution.dev

Happy Coding 😊