VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
Java Cơ Bản Các Khái Niệm Java OOPs Java String Xử Lý Ngoại Lệ Các Lớp Lồng Nhau Đa Luồng (Multithreading)

Java I/O

Java Input/Output Đọc ghi file trong java Lớp Console Lớp FilePermission Ghi file trong java với lớp FileOutputStream Đọc file trong java với lớp FileInputStream Ghi file trong java với lớp BufferedOutputStream Đọc file trong java với lớp BufferedInputStream Đọc file trong java với lớp SequenceInputStream Ghi file trong java với lớp ByteArrayOutputStream Đọc file trong java với lớp ByteArrayInputStream Ghi file trong java với lớp DataOutputStream Đọc file trong java với lớp DataInputStream Ghi file trong java với lớp FileWriter Đọc file trong java với lớp FileReader Ghi file trong java với lớp FilteroutputStream Đọc file trong java với lớp FilterInputStream Ghi file trong java với lớp BufferedWriter Đọc file trong java với lớp BufferedReader Đọc file trong java với lớp CharArrayReader Ghi file trong java với lớp CharArrayWriter Ghi file trong java với lớp PrintStream Ghi file trong java với lớp PrintWriter Lớp PushbackInputStream trong java Lớp PushbackReader trong java Ghi file trong java với lớp StringWriter Đọc file trong java với lớp StringReader

Java Serialization

Serialization trong java Lớp ObjectOutputStream Lớp ObjectInputStream Từ khóa transient trong java
Ví Dụ Java I/O Java AWT Java Swing Lập Trình Mạng Với Java Java Date Chuyển Đối Kiểu Dữ Liệu Java Collections Java JDBC Các Tính Năng Mới Trong Java Bài Tập Java Có Lời Giải Câu Hỏi Phỏng Vấn Java
1 / 3
❮ ❯

Delete nhiều file dựa vào phần mở rộng trong java


Học Java cơ bản
Immutable String trong java

Trong java, bạn có thể implements giao tiếp FilenameFilter và override phương thức accept(File dir, String name) để filter file theo phần mở rộng.

Ví dụ 1: implement giao tiếp FilenameFilter để liệt kê ra các file có phần mở rộng là ".txt", sau đó thực hiện xóa từng file.

import java.io.File;
import java.io.FilenameFilter;

public class DeleteFilesExample {
    private static final String FILE_DIR = "D:\\log";
    private static final String FILE_TEXT_EXT = ".txt";

    public static void main(String args[]) {
        new DeleteFilesExample().deleteFile(FILE_DIR, FILE_TEXT_EXT);
    }

    public void deleteFile(String folder, String ext) {

        GenericExtFilter filter = new GenericExtFilter(ext);
        File dir = new File(folder);

        // list out all the file name with .txt extension
        String[] list = dir.list(filter);

        // delete files
        if (list.length == 0) {
            File fileDelete;
            for (String file : list) {
                String temp = new StringBuffer(FILE_DIR).append(File.separator).append(file).toString();
                fileDelete = new File(temp);
                boolean isdeleted = fileDelete.delete();
                System.out.println("file : " + temp + " is deleted : " + isdeleted);
            }
        }
    }

    // inner class, generic extension filter
    public class GenericExtFilter implements FilenameFilter {

        private String ext;

        public GenericExtFilter(String ext) {
            this.ext = ext;
        }

        public boolean accept(File dir, String name) {
            return (name.endsWith(ext));
        }
    }
}

Giả sử trong folder log có chứa các file: a.txt, b,txt, c.txt, d.txt:

Output:

file : D:\log\a.txt is deleted : true
file : D:\log\b.txt is deleted : true
file : D:\log\c.txt is deleted : true
file : D:\log\d.txt is deleted : true

Ví dụ 2, Delete nhiều file trong java sử dụng lớp nặc danh

import java.io.File;
import java.io.FilenameFilter;

public class DeleteFilesExample2 {
    private static final String FILE_DIR = "D:\\log";
    private static final String FILE_TEXT_EXT = ".txt";

    public static void deleteFiles(String folder, String ext) {
        File dir = new File(folder);

        // list out all the file name with .txt extension
        String[] list = dir.list(new FilenameFilter() {

            @Override
            public boolean accept(File file, String name) {
                return name.endsWith(FILE_TEXT_EXT);
            }
        });

        // delete files
        if (list.length == 0) {
            File fileDelete;
            for (String file : list) {
                String temp = new StringBuffer(FILE_DIR).append(File.separator).append(file).toString();
                fileDelete = new File(temp);
                boolean isdeleted = fileDelete.delete();
                System.out.println("file : " + temp + " is deleted : " + isdeleted);
            }
        }
    }
}

Giả sử trong folder log có chứa các file: a.txt, b,txt, c.txt, d.txt:

Output:

file : D:\log\a.txt is deleted : true
file : D:\log\b.txt is deleted : true
file : D:\log\c.txt is deleted : true
file : D:\log\d.txt is deleted : true

Học Java cơ bản
Immutable String trong java

Recent Updates

Xuất dữ liệu ra màn hình console trong JavaCài đặt môi trường JavaJava Swing - Bài tập quản lý sinh viên trong javaLinkedList trong javaArrayList trong javaBài tập java có lời giảiXác thực dữ liệu (Data Validation) trong ExcelGiới thiệu các hàm có sẵn trong ExcelSheet Options trong ExcelHướng dẫn lập trình Python với PyCharm Community EditionHướng dẫn lập trình Python với Visual Studio CodeGiới thiệu CSS3Sắp Tết 2026 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2026?

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml