Java Program to Read Content From One File and Write it into Another File

16 Jun, 2022
 File handling plays a major role in doing so as the first essential step is writing content to a file. For this is one must know how to write content in a file using the  FileWriter class. The secondary step is reading content from a file and print the same. For this, one must have good hands on File Reader class to do so. 
Now in order to read content from one file and write it into another file, it is already discussed achieving the same how to write content on a file and also how to read contents from a file. Now, the time to combine both of them. Now we will use FileReader class to read the contents from a class and the FileWriter class to write it on another file.
Methods: In order to read contents from a file and write it into another file, one must have to know how to read a file or write a file.
Using the variableWithout using any variable
Using the variable
Without using any variable
Method 1: Using the variable
Example 1:
Java
// Java program to read content from one file// and write it into another file // Custom paths for this program// Reading from - gfgInput.txt// Writing to - gfgOutput.txt // Importing input output classesimport java.io.FileReader;import java.io.FileWriter;import java.io.IOException; // Classclass GFG {     // Main driver method    public static void main(String[] args)    {         // The file reading process may sometimes give        // IOException         // Try block to check for exceptions        try {             // Creating a FileReader object and            // file to be read is passed as in parameters            // from the local directory of computer            FileReader fr = new FileReader("gfgInput.txt");             // FileReader will open that file from that            // directory, if there is no file found it will            // through an IOException             // Creating a FileWriter object            FileWriter fw = new FileWriter("gfgOutput.txt");             // It will create a new file with name            // "gfgOutput.text", if it is already available,            // then it will open that instead             // Declaring a blank string in which            // whole content of file is to be stored            String str = "";             int i;             // read() method will read the file character by            // character and print it until it end the end            // of the file             // Condition check            // Reading the file using read() method which            // returns -1 at EOF while reading            while ((i = fr.read()) != -1) {                 // Storing every character in the string                str += (char)i;            }             // Print and display the string that            // contains file data            System.out.println(str);             // Writing above string data to            // FileWriter object            fw.write(str);             // Closing the file using close() method            // of Reader class which closes the stream &            // release resources that were busy in stream            fr.close();            fw.close();             // Display message            System.out.println(                "File reading and writing both done");        }         // Catch block to handle the exception        catch (IOException e) {             // If there is no file in specified path or            // any other error occurred during runtime            // then it will print IOException             // Display message            System.out.println(                "There are some IOException");        }    }}
Output: As this code is accessing internal storage to save that file, so it wouldn’t run on the compiler so the output is hard-coded below as shown
The program prints the content in that file, and then in the next line, it will print File reading and writing done(if there is no error occurred), and the contents of the input file will be written in the new output file. If there is some error, then it will print There are some IOException.
Method 2: Without using any variable
In the previous program, we were storing all the contents of the input file in a variable, and then we were writing the string in the output file. Now we can directly store those characters in the output file directly.
Java
// Java program to read content from one file// and write it into another file // Custom paths for this program// Reading from - gfgInput.txt// Writing to - gfgOutput.txt // Importing FileWriter class// to write into a fileimport java.io.FileWriter;// Also importing IOException class to// throw exception if occursimport java.io.IOException; // Classclass GFG {     // Main driver method    public static void main(String[] args)    {        // The file writing and creating process may give        // some IOException, that's why it is mandatory to        // use try block         // Try block to check for exception/s        try {             // Creating a FileWriter object which will            // create a new file and if already available            // it will open it            FileWriter fw = new FileWriter("gfg.txt");             // Content to be written on file            // Custom input string             // write() method will write the string            // in the file            fw.write("We love GeeksForGeeks");             // Closing the file freeing up resources            // in the memory            fw.close();             // Print and display message            System.out.println("\nFile write done");        }         // Catch block to catch if exception/s occurs        catch (IOException e) {             // Print and display message            System.out.println(                "There are some IOException");        }    }}
Output: As this code is accessing internal storage to save that file, so it wouldn’t run on the compiler so the output is hard-coded below as shown
As output the program will print FIle write done(if there is no error), and will create a file with the same name given  as file name, i.e, ‘gfg.text’
rs1686740
sweetyty
nikhatkhan11
Java-Files
Picked
Java
Java Programs
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.