Apache Commons IO - IOUtils
Provides utility methods for reading, writing and copying files. The methods works with InputStream, OutputStream, Reader and Writer.
Class Declaration
Following is the declaration for org.apache.commons.io.IOUtils Class −
public class IOUtils
extends Object
Features
- Provides static utility methods for input/output operations.
- toXXX() − reads data from a stream.
- write() − write data to a stream.
- copy() − copy all data to a stream to another stream.
- contentEquals − compare the contents of two streams.
Example of IOUtils Class
Here is the input file we need to parse −
Welcome to TutorialsPoint. Simply Easy Learning.
IOTester.java
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.commons.io.IOUtils;
public class IOTester {
public static void main(String[] args) {
try {
//Using BufferedReader
readUsingTraditionalWay();
//Using IOUtils
readUsingIOUtils();
} catch(IOException e) {
System.out.println(e.getMessage());
}
}
//reading a file using buffered reader line by line
public static void readUsingTraditionalWay() throws IOException {
try(BufferedReader bufferReader
= new BufferedReader( new InputStreamReader(
new FileInputStream("input.txt") ) )) {
String line;
while( ( line = bufferReader.readLine() ) != null ) {
System.out.println( line );
}
}
}
//reading a file using IOUtils in one go
public static void readUsingIOUtils() throws IOException {
try(InputStream in = new FileInputStream("input.txt")) {
System.out.println( IOUtils.toString( in , "UTF-8") );
}
}
}
Output
It will print the following result.
Welcome to TutorialsPoint. Simply Easy Learning.
Welcome to TutorialsPoint. Simply Easy Learning.