Delete(Xóa) File, Thư mục Trong Java

Xây dựng chương trình delete file trong java đơn giản có source code kèm theo.

Xem thêm:

1. Mô tả yêu cầu

Đề bài: Viết chương trình Java đơn giản dùng để xóa tệp và thư mục trên máy tính.

  • Chương trình cần có giao diện người dùng. Cho phép chọn tệp hoặc thư mục mà họ muốn xóa và sau đó xác nhận quyết định của họ trước khi xóa tệp hoặc thư mục.
  • Xử lý các ngoại lệ có thể xảy ra khi xóa tệp và thư mục.

Video hướng dẫn:

2. Delete file trong java

private void btnDeleteActionPerformed(java.awt.event.ActionEvent evt) {                                          
    // Tạo một đối tượng JFileChooser để chọn tệp tin hoặc thư mục cần xóa
    JFileChooser filechooser = new JFileChooser();
    filechooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);

    // Hiển thị hộp thoại chọn tệp tin hoặc thư mục và lấy kết quả trả về
    int result = filechooser.showOpenDialog(this);

    // Kiểm tra xem người dùng đã chọn một tệp tin hoặc thư mục hay chưa
    if(result == JFileChooser.APPROVE_OPTION) {
        // Lấy đường dẫn tuyệt đối của tệp tin hoặc thư mục đã chọn
        String path = filechooser.getSelectedFile().getAbsolutePath();

        // Hiển thị đường dẫn trong trường văn bản txtPath
        txtPath.setText(path);
    }

    // Lấy đường dẫn từ trường văn bản txtPath
    String path = txtPath.getText();

    // Hiển thị hộp thoại xác nhận trước khi xóa
    int choose = JOptionPane.showConfirmDialog(this, "Are you sure to delete " + path + "?" );

    // Kiểm tra xem người dùng đã chọn YES, NO, hoặc CANCEL
    if(choose == JOptionPane.NO_OPTION || choose == JOptionPane.CANCEL_OPTION) {
        // Nếu chọn NO hoặc CANCEL, thoát khỏi hàm
        return;
    }

    // Gọi hàm deleteFile để thực hiện xóa tệp tin hoặc thư mục
    deleteFile(path);
}   

3. Class xóa thư mục trong java

private void deleteFile(String path) {
    try {
        // Tạo một đối tượng File từ đường dẫn được truyền vào
        File myFile = new File(path);

        // Kiểm tra xem đối tượng File có phải là một thư mục hay không
        if (myFile.isDirectory()) {
            // Nếu là thư mục, lặp qua tất cả các tệp tin và thư mục con và gọi đệ quy để xóa chúng
            for (File f : myFile.listFiles()) {
                deleteFile(f.getAbsolutePath());
            }
        }

        // Xóa thư mục hoặc tệp tin
        myFile.delete();

        // Hiển thị thông báo thành công sau khi xóa
        JOptionPane.showMessageDialog(this, "Delete Successful!", "Notification", JOptionPane.INFORMATION_MESSAGE);
    } catch (Exception e) {
        // Xử lý ngoại lệ và in ra thông tin lỗi nếu có lỗi xảy ra trong quá trình xóa
        e.printStackTrace();
    }
}

Source code:

Trên đây là cách xóa file, thư mục trong java. Cảm ơn bạn đã tham khảo bài tập lập trình hướng đối tượng java trên ttnguyen.net.

Bài viết liên quan:

Nguyễn Tiến Trường

Mình viết về những điều nhỏ nhặt trong cuộc sống, Viết về câu chuyện những ngày không có em