কম্পিউটার টিউটোরিয়াল

জাভাতে ডাইরেক্টরি থেকে শুধু ফাইল লিস্ট করা

ListFiles() মেথড একটি অ্যারে ফেরত দেয় যেটি করেন্ট (File) অবজেক্টের পাথে থাকা সব ফাইল (এবং ডাইরেক্টরি) এর অবজেক্ট (অবস্ট্র্যাক্ট পাথ) ধারণ করে।

File Filter ইন্টারফেস পাথ নেমের জন্য একটি ফিল্টার যা আপনি listFiles() মেথডে প্যারামিটার হিসেবে পাস করতে পারেন। এই মেথড পাস করা ফিল্টার অনুযায়ী ফাইল নেম ফিল্টার করে।

এক ফোল্ডারে ফাইল পেতে হলে, শুধু ফাইল এক্সেপ্ট (accept) করার একটি FileFilter ইমপ্লিমেন্ট করুন এবং তা listFiles() মেথডে প্যারামিটার হিসেবে পাস করুন।

ExampleDirectory-এর কন্টেন্টের স্ক্রিনশট:

জাভাতে ডাইরেক্টরি থেকে শুধু ফাইল লিস্ট করা

উদাহরণ ১

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

public class Demo { 
    public static void main(String args[]) throws IOException { 
        // ডাইরেক্টরি জন্য File অবজেক্ট তৈরি
        File directoryPath = new File("D:\\ExampleDirectory"); 
        
        // ডাইরেক্টরি ফাইল জন্য ফিল্টার তৈরি
        FileFilter fileFilter = new FileFilter() { 
            public boolean accept(File dir) { 
                if (dir.isFile()) { 
                    return true; 
                } else { 
                    return false; 
                } 
            } 
        }; 
        
        File[] list = directoryPath.listFiles(fileFilter); 
        System.out.println("List of the jpeg files in the specified directory:"); 
        
        for (File fileName : list) { 
            System.out.println(fileName); 
        } 
    } 
}

আউটপুট

List of the jpeg files in the specified directory: 
D:\ExampleDirectory\demo1.pdf 
D:\ExampleDirectory\demo2.pdf 
D:\ExampleDirectory\sample1.txt 
D:\ExampleDirectory\sample2.txt 
D:\ExampleDirectory\sample3.txt 
D:\ExampleDirectory\sample_jpeg1.jpg 
D:\ExampleDirectory\sample_jpeg2.jpg 
D:\ExampleDirectory\test1.docx 
D:\ExampleDirectory\test2.docx

উদাহরণ ২ (NIO.2 ব্যবহার করে)

import java.io.IOException; 
import java.nio.file.Files; 
import java.nio.file.Path; 
import java.nio.file.Paths; 
import java.util.stream.Stream; 

public class ListOfFiles { 
    public static void main(String[] args) throws IOException { 
        Stream path = Files.walk(Paths.get("D:\\ExampleDirectory")); 
        path = path.filter(Files::isRegularFile); 
        path.forEach(System.out::println); 
    } 
}

আউটপুট

D:\ExampleDirectory\demo1.pdf 
D:\ExampleDirectory\demo2.pdf 
D:\ExampleDirectory\sample1.txt 
D:\ExampleDirectory\sample2.txt 
D:\ExampleDirectory\sample3.txt 
D:\ExampleDirectory\sample_jpeg1.jpg 
D:\ExampleDirectory\sample_jpeg2.jpg 
D:\ExampleDirectory\test1.docx 
D:\ExampleDirectory\test2.docx
  1. জাভাতে File ইউটিলিটি মেথড ব্যবহার করে ডাইরেক্টরি তৈরি করা

  2. জাভাতে ডিরেক্টরি হায়ারার্কি (Directory Hierarchy) কীভাবে তৈরি করবেন?

  3. জাভাতে ডিরেক্টরির সব ফাইল রিকার্সিভলি ডিলিট করা (শুধু ফাইল)

  4. জাভাতে ডিরেক্টরির সব ফাইল রিকার্সিভলি লিস্ট করা