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

জাভাতে ডাইরেক্টরিতে ফাইল সার্চ করা

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

এক ফাইল সার্চ করার জন্য আপনাকে ডাইরেক্টরির প্রতিটি ফাইলের নাম কাঙ্খিত ফাইলের নামের সাথে equals() মেথড ব্যবহার করে তুলনা করতে হবে।

উদাহরণ ১

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

public class Example { 
    public static void main(String[] argv) throws Exception { 
        System.out.println("Enter the directory path: "); 
        Scanner sc = new Scanner(System.in); 
        String pathStr = sc.next(); 
        
        System.out.println("Enter the desired file name: "); 
        String file = sc.next(); 
        System.out.println(file); 
        
        File dir = new File(pathStr); 
        String[] list = dir.list(); 
        System.out.println(Arrays.toString(list)); 
        
        boolean flag = false; 
        
        for (int i = 0; i < list.length; i++) { 
            if (file.equals(list[i])) { 
                flag = true; 
            } 
        } 
        
        if (flag) { 
            System.out.println("File Found"); 
        } else { 
            System.out.println("File Not Found"); 
        } 
    } 
}

আউটপুট

Enter the directory path: D:\\ExampleDirectory 
Enter the desired file name: demo2.pdf 
demo2.pdf 
[demo1.pdf, demo2.pdf, sample directory1, sample directory2, sample directory3, sample directory4, sample_jpeg1.jpg, sample_jpeg2.jpg, test1.docx, test2.docx] 
File Found

String[] list(FilenameFilter filter) মেথড File ক্লাসের একটি স্ট্রিং অ্যারে ফেরত দেয় যেটি করেন্ট (File) অবজেক্টের পাথে থাকা সব ফাইল এবং ডাইরেক্টরির নাম ধারণ করে। কিন্তু রিটার্ন করা অ্যারে নির্দিষ্ট ফিল্টার অনুযায়ী ফিল্টার করা ফাইলনেম ধারণ করে। FilenameFilter জাভাতে একটি ইন্টারফেস যেটির একটি মাত্র মেথড আছে:

accept(File dir, String name)

এক ফাইল নেম সার্চ করতে হলে আপনাকে কাঙ্খিত ফাইলের নামের সাথে মিলে যাওয়া একটি FilenameFilter ইমপ্লিমেন্ট করতে হবে।

উদাহরণ ২

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

public class Example { 
    public static void main(String[] argv) throws Exception { 
        File dir = new File("D:\\ExampleDirectory"); 
        
        FilenameFilter filter = new FilenameFilter() { 
            public boolean accept(File dir, String name) { 
                return name.equalsIgnoreCase("demo1.pdf"); 
            } 
        }; 
        
        String[] files = dir.list(filter); 
        
        if (files == null) { 
            System.out.println("File Not Found"); 
        } else { 
            System.out.println("File Found"); 
        } 
    } 
}

আউটপুট

File Found
  1. জাভাতে হায়ারার্কিক্যালি ডাইরেক্টরি তৈরি করা

  2. জাভাতে File ইউটিলিটি মেথড ব্যবহার করে ডাইরেক্টরি তৈরি করা

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

  4. জাভাতে JSON অবজেক্ট ফাইলে লিখুন