Learn to read a file to string in Java using Files.readString(path) method. This API has been introduced in Java 11.
1. Files readString() methods
java.nio.file.Files
class has two overloaded methods.
public static String readString​(Path path) throws IOException public static String readString​(Path path, Charset cs) throws IOException
- First method reads all content from a file into a string, decoding from bytes to characters using the UTF-8 charset.
The method ensures that the file is closed when all content have been read or an I/O error, or other runtime exception, is thrown.
- First method is equivalent to
readString(path, StandardCharsets.UTF_8)
. - Second method does the same with with only using the specified charset.
- Please note that these methods are not intended for reading very large files. Otherwise they may throw
OutOfMemoryError
if the file is extremely large, e.g. larger than 2GB.
2. Files readString() example
Java program to read a file into string using Files.readString()
method.
import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.Files; import java.io.IOException; public class Main { public static void main(String[] args) { Path filePath = Paths.get("C:/", "temp", "test.txt"); try { String content = Files.readString(filePath); System.out.println(content); } catch (IOException e) { e.printStackTrace(); } } }
Program output.
Hello Java Learner !!
Where the file c:/temp/test.txt
is this.
Hello Java Learner !!
Drop me your questions in comments section.
Happy Learning !!
Rowan
Hey, I’m using readString on an xml file, but when I got to use a string method like .getLength() it just ignores it. I print to the console and it shows the string but the print of the length shows nothing