Home >Java >javaTutorial >How to Rename Files in Java: Handling Existing Files and Overwriting?
In the realm of Java file handling, one common task is renaming a file. This seemingly straightforward operation can bring forth various scenarios, each requiring a tailored solution.
Renaming a File (non-existent)
To rename a file that does not currently exist, Java provides the renameTo method. Simply specify the old and new file names as parameters, and if successful, the file will be renamed.
Renaming a File (existing)
If the destination file already exists, the renameTo operation will fail with an IOException. To handle this, you can either overwrite the existing file or append the contents of the source file to the existing file.
Appending Contents to an Existing File
To append the contents of the source file to the existing file, you can use the following code:
java.io.FileWriter out = new java.io.FileWriter(file2, true /*append=yes*/);
This code opens a file writer in append mode, ensuring that any data written to it will be added to the end of the existing file.
Complete Example
Combining the above concepts, here's a comprehensive example of how to rename a file and handle the existing file scenario:
try { // Rename file (or directory) boolean success = file.renameTo(file2); if (!success) { // File exists, handle scenario if (overwriteExisting) { // Overwrite existing file with new contents java.io.FileWriter out = new java.io.FileWriter(file2); out.write(newContents); out.close(); } else { // Append new contents to existing file java.io.FileWriter out = new java.io.FileWriter(file2, true /*append=yes*/); out.write(newContents); out.close(); } } } catch (IOException e) { // Handle IOException }
The above is the detailed content of How to Rename Files in Java: Handling Existing Files and Overwriting?. For more information, please follow other related articles on the PHP Chinese website!