File Handling in Java Complete Guide

File handling in Java lets a program create, read, write, and delete files on disk. Java provides the File class along with I/O classes like FileReader, FileWriter, and BufferedReader for these operations.

Creating a File

import java.io.File;
import java.io.IOException;

File file = new File("data.txt");
if (file.createNewFile()) {
    System.out.println("File created: " + file.getName());
}

Writing to a File

import java.io.FileWriter;
import java.io.IOException;

FileWriter writer = new FileWriter("data.txt");
writer.write("Hello, Uncodemy learners!");
writer.close();

Reading from a File

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

BufferedReader reader = new BufferedReader(new FileReader("data.txt"));
String line;
while ((line = reader.readLine()) != null) {
    System.out.println(line);
}
reader.close();

Deleting a File

File file = new File("data.txt");
if (file.delete()) {
    System.out.println("Deleted: " + file.getName());
}

Key Classes for File Handling

  • File — represents a file or directory path and provides methods to create, delete, or inspect it
  • FileReader / FileWriter — read and write character data
  • BufferedReader / BufferedWriter — add buffering for more efficient reading and writing
  • FileInputStream / FileOutputStream — read and write raw binary data
Always close file streams after use, or use a try-with-resources block, so that file handles are released even if an exception occurs.

Master Java with Uncodemy

Hands-on training, live projects, and placement support in our Java Programming Course.

Explore the Course