Java Course Navigation Java File Handling | CrackEase

File Handling in Java

File handling in Java involves performing operations on files stored on the filesystem — for example creating, reading, writing, updating and deleting files.

Java provides a rich set of I/O classes and utilities (in packages like java.io and java.nio.file) that make working with files straightforward and robust.

File Input and Output Streams
File I/O streams

Java handles raw byte streams and character streams. For byte-level operations use FileInputStream and FileOutputStream. For character-based I/O use readers and writers such as FileReader, FileWriter, BufferedReader and BufferedWriter.

Buffered classes improve performance by reducing the number of physical reads/writes. For modern code consider using java.nio.file.Files utilities (since Java 7) for many common file tasks.

File Handling in Java

Common file operations include:

  • Creating and deleting files or directories
  • Reading from files (byte or character streams)
  • Writing to files (overwriting or appending)
  • Checking file existence, size, permissions and metadata

Frequently used classes: File, FileInputStream, FileOutputStream, FileReader, FileWriter, BufferedReader, BufferedWriter, and the Files utility class under java.nio.file.

File Handling in Java (Summary)

Best practices when working with files:

  • Always close streams (use try-with-resources since Java 7).
  • Prefer buffered streams/writers for better performance.
  • Validate paths and handle exceptions gracefully.
  • Use java.nio.file APIs for modern, robust file operations.
Reading File

Example — reading a file character by character using FileReader:


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

public class ReadFromFile {
    public static void main(String[] args) {
        File file = new File("example.txt");
        try (FileReader reader = new FileReader(file)) {
            int character;
            while ((character = reader.read()) != -1) {
                System.out.print((char) character);
            }
        } catch (IOException e) {
            System.out.println("An error occurred while reading the file.");
            e.printStackTrace();
        }
    }
}
                    
Writing File

Example — writing text to a file using BufferedWriter:


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class WriteToFile {
    public static void main(String[] args) {
        File file = new File("example.txt");
        try (BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file))) {
            bufferedWriter.write("Hello, world!");
            System.out.println("Data written to file successfully.");
        } catch (IOException e) {
            System.out.println("An error occurred while writing to the file.");
            e.printStackTrace();
        }
    }
}
                    
Footer Content | CrackEase