آموزش کار با فایلها و پوشهها در زبان جاوا (بخش دوم)
جلسات دوره
مهدی عباسی
مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و .... مشاهده رزومه
آموزش کار با فایلها و پوشهها در زبان جاوا (بخش دوم)
در این جلسه با فیلتر کردن پوشه ها فایل ها در جاوا آشنا می شویم.
در جاوا دو اینترفیس برای فیلتر کردن فایل ها به نام FileNameFilter و FileFilter وجود دارد که در این جلسه به صورت کامل با آن ها آشنا می شویم.
FileNameFilter:
این اینترفیس برای فیلتر کردن فایل ها استفاده می شود.
برای شروع یک کلاس به نام MyFilenameFilter می سازیم و اینترفیس FileNameFilter را implements می کنیم.
درون این اینترفیس یک متد به نام accept وجود دارد که باید آن را Override کرد. این متد به ازای تمام فایل ها فراخوانی می شود.
public class MyFilenameFilter implements FilenameFilter {
@Override
public boolean accept(File dir, String name) {
return false;
}
}
این متد دو ورودی دارد و خروجی آن از نوع boolean است. ورودی اون آن از نوع File است که آدرس دایرکتوری را مشخص می کند و ورودی دوم از نوع String است که نام و پسوند فایل است.
ما می خواهیم فیلتری بنویسیم که لیستی از پسوند ها را دریافت کند و تمام فایل هایی که با آن پسوند هستند را نمایش دهد.
ابتدا لیستی از پسوند ها را درون کلاس MyFilenameFilter با تابع سازنده دریافت می کنیم.
سپس در متد accept شرط بررسی برابر بودن فایل با آن را پسوند را قرار می دهیم. مانند که زیر
public class MyFilenameFilter implements FilenameFilter {
String[] exts;
public MyFilenameFilter(String... exts) {
this.exts = exts;
}
@Override
public boolean accept(File dir, String name) {
for (String ext : exts) {
if (name.endsWith(ext)) {
return true;
}
}
return false;
}
}
نحوه فرا خوانی کلاس MyFilenameFilter به صورت زیر است
public class Main {
public static void main(String[] args) {
File dir = new File("C:\\Windows");
File[] files = dir.listFiles(new MyFilenameFilter(".xml", ".exe"));
for (File file : files) {
System.out.println(file.getName());
}
}
}
با اجرای کد بالا تمام فایل های درون پوشه C:\windows که پسوند آن ها .xml و .exe است نمایش داده می شوند.
در ادامه اینترفیس FileFilter را به صورت کامل توضیح می دهیم و مثالی از آن حل می کنیم. همچنین نحوه ایجاد پوشه و فایل را در جاوا یاد می گیریم.
به پایان این جلسه رسیدیم امیدوارم از آموزش ها لذت کافی رو برده باشید برای دسترسی بیشتر به جلسات این دوره از آموزش جاوا پیشرفته کلیک کنید. همچنین می توانید سوالات خود را در انجمن پرسش و پاسخ درسمن در میان بگذارید.
نظر شما در تصمیم دیگران اثرگذار است.
لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.