Java – Write String to File
To write String to File in Java, there are many processes we can follow. Some of them are using FileUtils class of apache’s commons.io library, Input Streams, etc.
In this tutorial, we will learn some of the ways to write string to a file using following examples.
1. Read file as string using BufferedOutputStream
In this example, we will use BufferedOutputStream as the main step to write string data to file. Following is the sequence of steps.
- Create file object with the path of the text file.
- Create a FileOutputStream with the file object created in the above step.
- Using this FileOutputStream, create a BufferedOutputStream.
- Convert data string to byte array.
- Use BufferedOutputStream.write() to write the byte array to file.
- Close BufferedOutputStream and FileOutputStream to release any system resources associated with the streams.
- We have the file contents read to string.
WriteStringToFile.java
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* Java Example Program to Write String to File
*/
public class WriteStringToFile {
public static void main(String[] args) {
File file = new File("files/data1.txt");
String data = "Hello World!\nWelcome to www.tutorialkart.com";
try(FileOutputStream fos = new FileOutputStream(file);
BufferedOutputStream bos = new BufferedOutputStream(fos)) {
//convert string to byte array
byte[] bytes = data.getBytes();
//write byte array to file
bos.write(bytes);
bos.close();
fos.close();
System.out.print("Data written to file successfully.");
} catch (IOException e) {
e.printStackTrace();
}
}
}
FileOutputStream and BufferedOutputStream could throw IOException. Hence we used Java Try with Resource.
Run the program from command prompt or in your favorite IDE like Eclipse.
Output
Data written to file successfully.
2. Write string to file using commons.io
In this example, we shall use Apache’s commons.io package to write string to file.
- Create file object with the path to the text file.
- Have your data ready in a string.
- Call the method FileUtils.writeStringToFile() and pass the file object, data string as arguments to it. The function writes the data to file.
WriteStringToFile.java
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
/**
* Java Example Program to Write String to File
*/
public class WriteStringToFile {
public static void main(String[] args) {
File file = new File("files/data1.txt");
String data = "Hello World!\nWelcome to www.tutorialkart.com";
try {
//write string to file
FileUtils.writeStringToFile(file, data);
System.out.print("Data written to file successfully.");
} catch (IOException e) {
e.printStackTrace();
}
}
}
Run this program, and you will get the following output.
Output
Data written to file successfully.
Conclusion
In this Java Tutorial, we learned how to write String to file, using inbuilt classes and some external Java packages.