×

Quản lý file và thư mục với lớp File trong Java

Trong lập trình Java, lớp File cung cấp một cách hiệu quả để quản lý file và thư mục trên hệ điều hành. Java.IO là gói chứa các lớp hỗ trợ đọc và ghi file, trong đó lớp File đóng một vai trò quan trọng. Bài viết này sẽ khám phá cách sử dụng lớp File để xử lý các nhiệm vụ quản lý file và thư mục.

Tạo File và Thư Mục

Lớp File cho phép bạn tạo file và thư mục một cách dễ dàng. Để tạo một file mới, bạn có thể sử dụng phương thức createNewFile(). Tương tự, để tạo một thư mục mới, bạn sử dụng phương thức mkdir():

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

public class Main {
    public static void main(String[] args) {
        // Tạo file mới
        File file = new File("example.txt");
        try {
            if (file.createNewFile()) {
                System.out.println("File được tạo thành công!");
            } else {
                System.out.println("File đã tồn tại.");
            }
        } catch (IOException e) {
            System.out.println("Đã xảy ra lỗi.");
            e.printStackTrace();
        }

        // Tạo thư mục mới
        File directory = new File("exampleDir");
        if (directory.mkdir()) {
            System.out.println("Thư mục được tạo thành công!");
        } else {
            System.out.println("Thư mục đã tồn tại hoặc không thể tạo.");
        }
    }
}

Đọc và Ghi File

Để đọc và ghi file trong Java, bạn có thể sử dụng các lớp như FileReader, FileWriter, BufferedReader, và BufferedWriter. Dưới đây là ví dụ về cách đọc nội dung từ một file:

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        try {
            File file = new File("example.txt");
            Scanner scanner = new Scanner(file);
            while (scanner.hasNextLine()) {
                String data = scanner.nextLine();
                System.out.println(data);
            }
            scanner.close();
        } catch (FileNotFoundException e) {
            System.out.println("File không tồn tại.");
            e.printStackTrace();
        }
    }
}

Còn để ghi nội dung vào file, bạn có thể sử dụng FileWriter:

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

public class Main {
    public static void main(String[] args) {
        try {
            FileWriter writer = new FileWriter("example.txt");
            writer.write("Xin chào thế giới!");
            writer.close();
            System.out.println("Đã ghi dữ liệu vào file thành công.");
        } catch (IOException e) {
            System.out.println("Đã xảy ra lỗi.");
            e.printStackTrace();
        }
    }
}

Xóa File và Thư Mục

Bạn có thể xóa file hoặc thư mục bằng cách sử dụng phương thức delete() của lớp File. Ví dụ dưới đây minh họa cách xóa một file và một thư mục:

import java.io.File;

public class Main {
    public static void main(String[] args) {
        // Xóa file
        File file = new File("example.txt");
        if (file.delete()) {
            System.out.println("File đã bị xóa thành công!");
        } else {
            System.out.println("File không tồn tại hoặc không thể xóa.");
        }

        // Xóa thư mục
        File directory = new File("exampleDir");
        if (directory.delete()) {
            System.out.println("Thư mục đã bị xóa thành công!");
        } else {
            System.out.println("Thư mục không tồn tại hoặc không thể xóa.");
        }
    }
}

Kiểm Tra Thuộc Tính của File và Thư Mục

Lớp File cung cấp nhiều phương thức để kiểm tra các thuộc tính của file và thư mục, như exists(), isDirectory(), isFile(), và length(). Ví dụ sau đây kiểm tra một số thuộc tính cơ bản:

import java.io.File;

public class Main {
    public static void main(String[] args) {
        File file = new File("example.txt");
        if (file.exists()) {
            System.out.println("File tồn tại.");
            if (file.isDirectory()) {
                System.out.println("Đây là một thư mục.");
            } else if (file.isFile()) {
                System.out.println("Đây là một file.");
            }
            System.out.println("Kích thước file: " + file.length() + " bytes");
        } else {
            System.out.println("File không tồn tại.");
        }
    }
}

Kết Luận

Lớp File cung cấp các công cụ mạnh mẽ và linh hoạt để quản lý file và thư mục trong Java. Từ việc tạo, đọc, ghi, xóa cho đến kiểm tra các thuộc tính chi tiết của file và thư mục, lớp File giúp lập trình viên quản lý hệ thống file một cách hiệu quả. Bằng cách sử dụng các phương thức mà lớp này cung cấp, bạn có thể dễ dàng thao tác và quản lý dữ liệu trong các ứng dụng Java của mình.

Comments