Convert Reader to String in Java using Apache Commons IO

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

In this Java tutorial, we learn how to read the Reader object as a String using IOUtils utility class of Apache Commons IO library.

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 read Reader object as a String using IOUtils class

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

Simple Solution
Java Tutorials
Apache Commons IO Tutorials
Spring Boot Tutorials

The Java program below, we read the text file into a Reader object and convert it to a String using the IOUtils.toString() method.

ReaderAsString.java

import org.apache.commons.io.IOUtils;

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

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

            String content = IOUtils.toString(reader);

            System.out.print(content);
            IOUtils.close(reader);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
The output is:
Simple Solution
Java Tutorials
Apache Commons IO Tutorials
Spring Boot Tutorials

Happy Coding 😊