English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

كيف يمكنني الحصول على قائمة جميع الملفات والمجلدات في مجلد Java؟

فئة الاسمملففيjava.ioالمجموعة تعبر عن ملف أو دليل (اسم المسار). توفر هذه الفئة جميع الأساليب المختلفة لتنفيذ العمليات المختلفة على ملف/دليل.

من أجل الحصول على قائمة جميع الملفات الموجودة حاليًا في الدليل، يقدم هذا العنصرlist()فئة files مع أنواع متعددة توفر (تقوم بإرجاع الأسماء) وListFiles (تقوم بإرجاع عنصر File).

List()方法

هذا الطريقة تعود قائمة من الأنواع الأبجديات، تحتوي على أسماء جميع الملفات والدوال في مسار العنصر الحالي (الملف).

使用此方法,您可以仅打印文件和目录的名称。

مثال

以下Java程序列出了路径D:\\ ExampleDirectory中所有文件和目录的名称。

import java.io.File;
import java.io.IOException;
public class ListOfFiles {
   public static void main(String args[]) throws IOException {
      //إعداد ملف دليل
      File directoryPath = new File("D:\\ExampleDirectory");
      //所有文件和目录的列表
      String contents[] = directoryPath.list();
      System.out.println("目录中的文件和目录列表:");
      for(int i=0; i<contents.length; i++) {
         System.out.println(contents[i]);
      }
   }
}

نتيجة الإخراج

目录中的文件和目录列表:
SampleDirectory1
SampleDirectory2
SampleFile1.txt
SampleFile2.txt
SapmleFile3.txt

ListFiles()方法

此方法返回一个数组,该数组保存当前(文件)对象表示的路径中所有文件(和目录)的对象(抽象路径)。

由于此方法返回文件夹中每个文件/目录的对象。使用它,您可以访问文件/目录的属性,例如大小,路径等。

مثال

以下Java程序将打印路径D:\\ ExampleDirectory中所有文件的名称,路径和大小。

import java.io.File;
import java.io.IOException;
public class ListOfFiles {
   public static void main(String args[]) throws IOException {
      //إعداد ملف دليل
      File directoryPath = new File("D:\\ExampleDirectory");
      //所有文件和目录的列表
      File filesList[] = directoryPath.listFiles();
      System.out.println("目录中的文件和目录列表:");
      for(File file : filesList) {
         System.out.println("اسم الملف: " + file.getName());
         System.out.println("مسار الملف: " + file.getAbsolutePath());
         System.out.println("حجم: " + file.getTotalSpace());
         System.out.println(" ");
      }
   }
}

نتيجة الإخراج

目录中的文件和目录列表:
File name: SampleDirectory1
File path: D:\ExampleDirectory\SampleDirectory1
الحجم: 262538260480
File name: SampleDirectory2
File path: D:\ExampleDirectory\SampleDirectory2
الحجم: 262538260480
اسم الملف: SampleFile1.txt
مسار الملف: D:\ExampleDirectory\SampleFile1.txt
الحجم: 262538260480
اسم الملف: SampleFile2.txt
مسار الملف: D:\ExampleDirectory\SampleFile2.txt
الحجم: 262538260480
اسم الملف: SapmleFile3.txt
مسار الملف: D:\ExampleDirectory\SapmleFile3.txt
الحجم: 262538260480

List(FilenameFilter filter)方法

如其签名所建议,此方法接受FilenameFilter对象,并返回一个String数组,其中包含当前(File)对象表示的路径中所有文件和目录的名称。但是重新调整后的数组包含基于指定过滤器过滤的文件名。

使用此方法,您可以获取特定文件夹中文件和目录的过滤名称。

مثال

برنامج Java هذا في مسارفي D:\\ ExampleDirectory打印文本文件的名称。

import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
public class ListOfFiles {
   public static void main(String args[]) throws IOException {
      //إعداد ملف دليل
      File directoryPath = new File("D:\\ExampleDirectory");
      FilenameFilter textFilefilter = new FilenameFilter() {
         public boolean accept(File dir, String name) {
            String lowercaseName = name.toLowerCase();
            if (lowercaseName.endsWith(".txt")) {
               return true;
            } else {
               return false;
            }
         }
      };
      // قائمة جميع ملفات النصوص
      String filesList[] = directoryPath.list(textFilefilter);
      System.out.println("قائمة ملفات النصوص في الدليل المحدد:");
      for(String fileName : filesList) {
         System.out.println(fileName);
      }
   }
}

نتيجة الإخراج

目录中的文本文件列表-

SampleFile1.txt
SampleFile2.txt
SapmleFile3.txt

طريقة ListFiles (FilenameFilter filter)

هذه الطريقة تأخذ ملف FilenameFilter وترتد File Array يحتوي على جميع الملفات والمجلدات كملفات (عناصر) في المسار الذي يعبر عنه File الحالي. ولكن Array المعدل يحتوي على ملفات (عناصر) مصفية بناءً على الأسماء.

باستخدام هذا الطريقة، يمكنك الحصول على ملفات ومجلدات مختارة بناءً على أسماء الملفات والمجلدات.

مثال

برنامج Java هذا في مسارفي D:\\ ExampleDirectoryتقديم أسماء جميع ملفات النصوص و مسارها و حجمها.

import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
public class ListOfFiles {
   public static void main(String args[]) throws IOException {
      //إعداد ملف دليل
      File directoryPath = new File("D:\\ExampleDirectory");
      FilenameFilter textFilefilter = new FilenameFilter() {
         public boolean accept(File dir, String name) {
            String lowercaseName = name.toLowerCase();
            if (lowercaseName.endsWith(".txt")) {
               return true;
            } else {
               return false;
            }
         }
      };
      // قائمة جميع ملفات النصوص
      File[] filesList = directoryPath.listFiles(textFilefilter);
      System.out.println("قائمة ملفات النصوص في الدليل المحدد:");
      for(File file : filesList) {
         System.out.println("اسم الملف: " + file.getName());
         System.out.println("مسار الملف: " + file.getAbsolutePath());
         System.out.println("حجم: " + file.getTotalSpace());
         System.out.println(" ");
      }
   }
}

نتيجة الإخراج

قائمة ملفات النصوص في الدليل المحدد:
اسم الملف: SampleFile1.txt
مسار الملف: D:\ExampleDirectory\SampleFile1.txt
الحجم: 262538260480
اسم الملف: SampleFile2.txt
مسار الملف: D:\ExampleDirectory\SampleFile2.txt
الحجم: 262538260480
اسم الملف: SapmleFile3.txt
مسار الملف: D:\ExampleDirectory\SapmleFile3.txt
الحجم: 262538260480

طريقة ListFiles (FileFilter filter)

هذه الطريقة تأخذ ملف FileFilter وترتد File Array يحتوي على جميع الملفات والمجلدات كملفات (عناصر) في المسار الذي يعبر عنه File الحالي. ولكن Array المعدل يحتوي على ملفات (عناصر) مصفية بناءً على خصائص الملف.

باستخدام هذا الطريقة، يمكنك الحصول على ملفات ومجلدات مختارة من دليل معين بناءً على الحجم، المسار، النوع (ملف أو دليل) وما إلى ذلك.

مثال

برنامج Java هذا في مسارفي D:\\ ExampleDirectoryتقديم أسماء جميع الملفات (بدلاً من المجلدات) و مسارها و حجمها.

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
public class ListOfFiles {
   public static void main(String args[]) throws IOException {
      //إعداد ملف دليل
      File directoryPath = new File("D:\\ExampleDirectory");
      FileFilter textFilefilter = new FileFilter() {
         public boolean accept(File file) {
            boolean isFile = file.isFile();
            if (isFile) {
               return true;
            } else {
               return false;
            }
         }
      };
      // قائمة جميع ملفات النصوص
      File[] filesList = directoryPath.listFiles(textFilefilter);
      System.out.println("قائمة ملفات النصوص في الدليل المحدد:");
      for(File file : filesList) {
         System.out.println("اسم الملف: " + file.getName());
         System.out.println("مسار الملف: " + file.getAbsolutePath());
         System.out.println("حجم: " + file.getTotalSpace());
         System.out.println(" ");
      }
   }
}

نتيجة الإخراج

قائمة ملفات النصوص في الدليل المحدد:
اسم الملف: cassandra_logo.jpg
مسار الملف: D:\ExampleDirectory\cassandra_logo.jpg
الحجم: 262538260480
اسم الملف: cat.jpg
مسار الملف: D:\ExampleDirectory\cat.jpg
الحجم: 262538260480
اسم الملف: coffeescript_logo.jpg
مسار الملف: D:\ExampleDirectory\coffeescript_logo.jpg
الحجم: 262538260480
اسم الملف: javafx_logo.jpg
مسار الملف: D:\ExampleDirectory\javafx_logo.jpg
الحجم: 262538260480
اسم الملف: SampleFile1.txt
مسار الملف: D:\ExampleDirectory\SampleFile1.txt
الحجم: 262538260480
اسم الملف: SampleFile2.txt
مسار الملف: D:\ExampleDirectory\SampleFile2.txt
الحجم: 262538260480
اسم الملف: SapmleFile3.txt
مسار الملف: D:\ExampleDirectory\SapmleFile3.txt
الحجم: 262538260480