آموزش کار با فایل‌ها و پوشه‌ها در زبان جاوا (بخش دوم)


آموزش کار با فایل‌ها و پوشه‌ها در زبان جاوا (بخش دوم)
براي خريد اين درس نياز است وارد سايت شويد. در صورت نداشتن حساب کاربري عضو شويد.

آموزش کار با فایل‌ها و پوشه‌ها در زبان جاوا (بخش دوم)

در این جلسه با فیلتر کردن پوشه ها فایل ها در جاوا آشنا می شویم.
در جاوا دو اینترفیس برای فیلتر کردن فایل ها به نام 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 را به صورت کامل توضیح می دهیم و مثالی از آن حل می کنیم. همچنین نحوه ایجاد پوشه و فایل را در جاوا یاد می گیریم.

به پایان این جلسه رسیدیم امیدوارم از آموزش ها لذت کافی رو برده باشید برای دسترسی بیشتر به جلسات این دوره از آموزش جاوا پیشرفته کلیک کنید. همچنین می توانید سوالات خود را در انجمن پرسش و پاسخ درسمن در میان بگذارید.


نظر بدهید نظر شما در تصمیم دیگران اثرگذار است. لطفا برای ما و همراهان درسمن نظر خود را بنویسید.
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.


مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات : جلسه
مدت زمان : 2057 دقیقه
حجم دوره : 6/35 گیگابایت
سطح مهارت : پیشرفته
وضعیت دوره : پایان یافته
تعداد دانشجویان : 1064
: میانگین امتیاز
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی

مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و ....