Как получить список всех файлов в папке на java?

Пользователь

от ottilie.farrell , в категории: Java , год назад

Как получить список всех файлов в папке на java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от brenna , год назад

@ottilie.farrell 

Чтобы получить список всех файлов в папке на Java, можно воспользоваться классом File из стандартной библиотеки:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.io.File;

public class Main {
    public static void main(String[] args) {
        // Укажите путь к папке, для которой нужно получить список файлов
        String folderPath = "/path/to/folder";
        
        // Создаем объект File для указанной папки
        File folder = new File(folderPath);
        
        // Получаем список всех файлов в папке
        File[] files = folder.listFiles();
        
        // Проверяем, что список файлов не пустой
        if (files != null) {
            // Выводим наименование всех файлов
            for (File file : files) {
                System.out.println(file.getName());
            }
        }
    }
}


Укажите полный путь к папке, для которой вы хотите получить список файлов, в переменной folderPath. Затем создайте объект File для этой папки, используя указанный путь. Затем вызовите метод listFiles(), чтобы получить массив объектов File, представляющих каждый файл в папке. Используйте цикл for для перебора всех файлов в массиве и выведите имена файлов с помощью метода getName().

Пользователь

от magdalen_kub , 8 месяцев назад

@ottilie.farrell 

Дополню, что для получения списка файлов в указанной папке можно использовать различные критерии выборки или фильтрации с помощью классов FilenameFilter или FileFilter.


Например, если вы хотите получить только определенный тип файлов (например, только файлы с расширением .txt), вы можете воспользоваться объектом FilenameFilter следующим образом:

1
2
3
4
5
6
File[] txtFiles = folder.listFiles(new FilenameFilter() {
    @Override
    public boolean accept(File dir, String name) {
        return name.toLowerCase().endsWith(".txt");
    }
});


Этот код позволит получить массив файлов только с расширением ".txt" из указанной папки. Вместо .endsWith(".txt") можно использовать любые другие условия фильтрации в зависимости от ваших требований.