Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menyenaraikan Fail Secara Rekursif dalam Direktori Menggunakan Java?

Bagaimanakah Saya Boleh Menyenaraikan Fail Secara Rekursif dalam Direktori Menggunakan Java?

Susan Sarandon
Susan Sarandonasal
2024-12-21 05:28:14782semak imbas

How Can I Recursively List Files in a Directory Using Java?

Penyenaraian Fail Rekursif dalam Java

Apabila ditugaskan untuk menyenaraikan fail secara rekursif dalam direktori di Java, Java API menyediakan penyelesaian yang komprehensif.

Penyelesaian Asli dengan Java 8 Strim

Java 8 memperkenalkan pendekatan berasaskan strim yang mudah untuk melintasi fail dalam struktur hierarki:

try (Stream<Path> stream = Files.walk(Paths.get(path))) {
    stream.filter(Files::isRegularFile)
          .forEach(System.out::println);
}

Mekanisme tertumpu aliran ini menawarkan fleksibiliti untuk melaksanakan pelbagai operasi, termasuk penapisan , pengumpulan dan pemetaan, pada laluan fail.

Tambahan Pertimbangan

  1. Penapisan Atribut Fail: Untuk kriteria penapisan atribut fail tertentu, Java menyediakan kaedah Files.find:
Files.find(Paths.get(path),
           Integer.MAX_VALUE,
           (filePath, fileAttr) -> fileAttr.isRegularFile())
        .forEach(System.out::println);
  1. Perbandingan Prestasi: Keputusan penanda aras menunjukkan perbezaan prestasi minimum antara Files.walk dan Files.find apabila menapis pada atribut fail. Walau bagaimanapun, Files.walk secara amnya terbukti lebih mudah kerana kelebihan beban dan kemudahan penggunaannya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyenaraikan Fail Secara Rekursif dalam Direktori Menggunakan Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn