Java список файлов в директории

Java список файлов в директории

Primary tabs

Forums:

поставим задачу конкретней — хотим получить из указанной директории список файлов с расширением .txt
Для это — прежде всего

далее в том месте — где мы планируем исполнять код выводящий список имеющихся файлов в стандартный поток вывода напишем примерно такой код:

это выведет пути к подходящим нам файлам в стандартный поток вывода.

материалы в помощь =

Ну и возвращаемся к нашей задаче.
Темы в помощь =

В своём проекте projectDir/src/main/resources я создал дополнительную папку myFolderName, в которой у меня лежат файлы .xml , и я хочу взять список файлов, которые лежат в этой папке.

Нашел вот такой код, но не знаю, какой путь нужно туда передать:

Вопрос: каким образом я могу взять список файлов, которые лежат в директории projectDir/src/main/resources/myFolderName ?

Как читать все файлы в папке через Java?

29 ответов

файлы.прогулка API доступен из Java 8.

пример использования try-with-resources шаблон рекомендуется в руководстве API. Это гарантирует, что независимо от обстоятельств поток будет закрыт.

в Java 8, вы можете сделать это

который будет печатать все файлы в папке, исключая все каталоги. Если вам нужен список, выполните следующие действия:

если вы хотите вернуть List вместо List

просто карта это:

вы также должны убедиться, чтобы закрыть поток! В противном случае вы можете столкнуться с исключением, сообщающим вам, что слишком много файлов открыты. Читать здесь для получения дополнительной информации.

все ответы на этот вопрос, которые используют новые функции Java 8, пренебрегают закрытием потока. Примером в принятом ответе должно быть:

из javadoc Files.walk способ:

возвращаемый поток инкапсулирует один или несколько DirectoryStreams. Если своевременное избавление ресурсов файловой системы необходимо, конструкция try-with-resources должна использоваться для обеспечения метод close stream вызывается после потоковые операции завершены.

просто пройдите через все файлы, используя Files.walkFileTree (Java 7)

Читайте также:  Asus gtx750ti 2gb ddr5

вы также можете создать фильтр, который затем может быть передан в newDirectoryStream способ выше

Если вы хотите больше опций, вы можете использовать эту функцию, которая направлена на заполнение arraylist файлов, присутствующих в папке. Варианты : recursivility и шаблон, чтобы соответствовать.

хорошее использование java.io.FileFilter Как видно на https://stackoverflow.com/a/286001/146745

Я думаю, что это хороший способ прочитать все файлы в папке и подпапке

простой пример, который работает с Java 1.7 рекурсивно список файлов в каталогах, указанных в командной строке:

хотя я согласен с Ричем, Орианом и остальными для использования:

почему-то все примеры здесь используется абсолютное путь (т. е. полностью от корня или, скажем, буквы диска (C:) для windows..)

Я хотел бы добавить, что можно использовать относительные путь-хорошо. Итак, если вы pwd (текущий каталог / папка) является folder1, и вы хотите разобрать folder1 / subfolder, вы просто пишете (в коде выше вместо ):

вот безопасное решение, хотя и не такое элегантное, как Java 8 Files.walk(..) :

список файлов из тестовой папки в пути к классу

вы можете фильтровать любые текстовые файлы или любое другое расширение ..просто замените его .MP3

чтобы расширить принятый ответ, я сохраняю имена файлов в ArrayList (вместо того, чтобы просто сбрасывать их в систему.из.println) я создал вспомогательный класс "MyFileUtils", чтобы он мог быть импортирован другими проектами:

я добавил полный путь к имени файла. Вы бы использовали его так:

ArrayList передается "value", но значение используется для указания на тот же объект ArrayList, живущий в куче JVM. Таким образом, каждый вызов рекурсии добавляет имена файлов в тот же ArrayList (мы не создаем новый ArrayList при каждом рекурсивном вызове).

Читайте также:  Watch dogs 2 мультиплеер

есть много хороших ответов выше, вот другой подход: в проекте maven все, что вы помещаете в папку ресурсов, копируется по умолчанию в папку target/classes. Чтобы узнать, что доступно во время выполнения

Теперь, чтобы получить файлы из определенной папки, предположим, у вас есть папка с именем "res" в папке ресурсов, просто замените:

Если вы хотите иметь доступ в ваш com.пакет "название" тут:

Это будет читать указанные файлы расширения файла в заданном пути (также выглядит вложенные папки)

Ссылка на основную публикацию
Insomnia the ark цена свободы
Очередь просмотра Очередь Удалить все Отключить YouTube Premium Хотите сохраните это видео? Пожаловаться Пожаловаться на видео? Выполните вход, чтобы сообщить...
High speed hdmi cable with ethernet
Приветствую всех посетителей блога о компьютерах. Сегодня бы очень хотелось поведать читателям о так называемом HDMI кабеле, с помощью которого...
Highscreen pure j 4pda прошивка
Внимание! Использование инструментов для перепрошивки неопытными пользователями может привести к выходу аппарата из строя. Установка этого обновления приведет к полному...
Instagram как выложить фото с компьютера
Зачем нужно выкладывать фото и видео в Инстаграм через компьютер? Инстаграм придумали, чтобы можно было быстро загрузить фото с телефона....
Adblock detector