Table of Contents
In this quick tutorial we’re going to illustrate how to convert a File to a Reader using plain Java, Guava or Apache Commons IO. Let’s get started.
This article is part of the “Java – Back to Basic” series here on VietMX’s Blog.
1. With Plain Java
Let’s first look at the simple Java solution:
@Test
public void givenUsingPlainJava_whenConvertingFileIntoReader_thenCorrect()
throws IOException {
File initialFile = new File("src/test/resources/initialFile.txt");
initialFile.createNewFile();
Reader targetReader = new FileReader(initialFile);
targetReader.close();
}
2. With Guava
Now – let’s see the same conversion, this time using the Guava library:
@Test
public void givenUsingGuava_whenConvertingFileIntoReader_thenCorrect() throws
IOException {
File initialFile = new File("src/test/resources/initialFile.txt");
com.google.common.io.Files.touch(initialFile);
Reader targetReader = Files.newReader(initialFile, Charset.defaultCharset());
targetReader.close();
}
3. With Commons IO
And finally, let’s end with the Commons IO code sample, doing the conversion via an intermediary byte array:
@Test
public void givenUsingCommonsIO_whenConvertingFileIntoReader_thenCorrect()
throws IOException {
File initialFile = new File("src/test/resources/initialFile.txt");
FileUtils.touch(initialFile);
FileUtils.write(initialFile, "With Commons IO");
byte[] buffer = FileUtils.readFileToByteArray(initialFile);
Reader targetReader = new CharSequenceReader(new String(buffer));
targetReader.close();
}
And there we have it – 3 ways to convert a File into a Reader – first with plain Java, then with Guava and finally with the Apache Commons IO library. Make sure to check out the sample over on GitHub.
Related posts:
How to Add a Single Element to a Stream
Lớp HashMap trong Java
Java Program to Implement Double Ended Queue
Java – InputStream to Reader
A Guide To UDP In Java
Ignore Null Fields with Jackson
Java 8 StringJoiner
Java – Convert File to InputStream
MyBatis with Spring
Reactive Flow with MongoDB, Kotlin, and Spring WebFlux
Java Program to Perform the Shaker Sort
Convert Hex to ASCII in Java
Java Program to Implement Graph Coloring Algorithm
Java Program to Create a Random Linear Extension for a DAG
Java Program to Implement Adjacency List
Java Program to Implement SimpeBindings API
Java Program to Implement Bit Array
Tổng quan về ngôn ngữ lập trình java
A Guide to LinkedHashMap in Java
An Introduction to ThreadLocal in Java
Upload and Display Excel Files with Spring MVC
A Guide to ConcurrentMap
HttpClient with SSL
Tiêu chuẩn coding trong Java (Coding Standards)
Java Program to Implement Suffix Array
Java Program to Implement Shoelace Algorithm
Spring Boot - Enabling Swagger2
Java InputStream to String
Spring 5 WebClient
Introduction to Using FreeMarker in Spring MVC
Comparing Long Values in Java
Java Collections Interview Questions