2013-11-28 4 views
0

Я ищу способ указать путь к файлу внутри папки, которая может содержать несколько подпапок с несколькими файлами.указать путь к файлу в папке и вложенной папке

Forexample

Folder A: 
    file 1, file 2 and Folder B, 
     Fodler B: 
      file 3, file 4,.... 

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

+0

Не удается ли получить список файлов и папок? Или это форматирование печатного выхода? – NormR

+0

Вы действительно пробовали кодировать это? Вы получаете какие-либо ошибки? Где усилия ... – Melquiades

ответ

0

На практике я бы использовал метод Apache Commons, но если вам нужно было написать свой собственный, для школьного проекта или что-то еще, вам нужно посмотреть рекурсию.

Если вы хотите только поместить одну папку глубоко, вы просто просматриваете папки в папках, ища файлы, если они могут идти на 10-20 уровней, это делает ваш код довольно ужасным, поэтому вы используете рекурсию.

public void listFiles(Folder) { 
    Print out all files in the current folder 
    Get all Folders in the current folder 
    for each folder 
    listfiles(folder) 
} 

Этот метод затем вызывает себя, пока у вас не будет всех файлов из всех дочерних папок, распечатанных.

+0

Это сработало для меня. можете ли вы также рассказать мне, как я могу напечатать размер файла и дату, измененную – user2614607

1

Посмотрите на Apache Commons FileUtils. Метод:

public static Collection<File> listFiles(File directory, 
            IOFileFilter fileFilter, 
            IOFileFilter dirFilter) 

должно позволить вам получить желаемый результат.

Смежные вопросы