AWT (Abstract Window Toolkit) ব্যবহার করে Custom File Filters তৈরি করতে পারেন যাতে নির্দিষ্ট ধরনের ফাইল ফিল্টার করা যায়। FileDialog ক্লাসে ফাইল নির্বাচন করার সময় কাস্টম ফাইল ফিল্টার ব্যবহার করার জন্য আপনাকে FilenameFilter ইন্টারফেসটি ইমপ্লিমেন্ট করতে হবে।
Custom File Filter তৈরি করার উদাহরণ
import java.awt.*;
import java.io.*;
public class CustomFileFilterExample {
public static void main(String[] args) {
// Frame তৈরি
Frame frame = new Frame("AWT Custom File Filter Example");
// FileDialog তৈরি এবং কাস্টম ফিল্টার সেট করা
FileDialog fileDialog = new FileDialog(frame, "Select a File", FileDialog.LOAD);
fileDialog.setFilenameFilter(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
// কাস্টম ফাইল ফিল্টার (যেমন .txt এবং .java ফাইল)
return name.endsWith(".txt") || name.endsWith(".java");
}
});
// FileDialog প্রদর্শন
fileDialog.setVisible(true);
// সিলেক্ট করা ফাইলের পাথ প্রিন্ট করা
String selectedFile = fileDialog.getFile();
if (selectedFile != null) {
System.out.println("Selected File: " + fileDialog.getDirectory() + selectedFile);
}
// Frame বন্ধ করা
frame.dispose();
}
}
ব্যাখ্যা:
- Frame: মূল উইন্ডো যেখানে
FileDialogপ্রদর্শিত হবে। - FileDialog: ফাইল সিলেক্ট করার ডায়ালগ তৈরি করা হয়। এখানে
FileDialog.LOADব্যবহার করা হয়েছে, যাতে ইউজার ফাইল নির্বাচন করতে পারে। - FilenameFilter: একটি কাস্টম ফিল্টার তৈরি করা হয়েছে যেখানে শুধু
.txtএবং.javaএক্সটেনশন সহ ফাইলগুলো নির্বাচন করা যাবে।acceptমেথডটি ফাইলের নাম এবং ডিরেক্টরি প্যারামিটার নেয় এবং চেক করে ফাইলটি নির্বাচনের জন্য অনুমোদিত কিনা। - fileDialog.setVisible(true):
FileDialogকে দেখানোর জন্য এটি ব্যবহার করা হয়। - fileDialog.getFile(): ইউজার যেটি ফাইল সিলেক্ট করেছে, সেটি পেতে এই মেথড ব্যবহার করা হয়।
আউটপুট:
FileDialogএকটি পপ-আপ উইন্ডো হিসেবে প্রদর্শিত হবে, যেখানে আপনি শুধুমাত্র.txtএবং.javaফাইল দেখতে পাবেন এবং সিলেক্ট করতে পারবেন।- নির্বাচিত ফাইলের পাথ কনসোলে প্রিন্ট হবে।
আরও কাস্টমাইজেশন:
এভাবে আপনি আরো কাস্টম ফিল্টার তৈরি করতে পারেন, যেমন শুধুমাত্র কোনো নির্দিষ্ট ফোল্ডারে থাকা ফাইল বা অন্যান্য এক্সটেনশন ফিল্টারিং।
Content added By
Read more