Мне нужно просмотреть все файлы данной папки (и ее подпапок) и выполнить что-то для каждого файла.Я искал способ просмотреть все файлы рекурсивно и нашел одно решение в Apache Commons Io: FileUtils.iterateFiles Возвращает итератор.Я проверил, как это реализовано, и увидел, что он просматривает все файлы и добавляет их в коллекцию, а затем возвращает итератор для коллекции.Ну, конечно, это то, что он делает.это то, что я искал:)
Но потом я подумал - эффективно ли сначала собирать все файлы, а затем перебирать все их и выполнять то, что я хочу?Или я должен вместо того, чтобы собирать их, просто выполнить действие в рекурсивном обходе?
Следует отметить, что мои необходимые действия над файлами включают в себя манипуляции с ними над вводом-выводом, которые могут быть неудачными ... (которые могут быть обработаны обоими способами ... но только что замечены, если я что-то упустил в своей строкемысли) Кроме того, набор папок и файлов, которые я просматриваю, МОЖЕТ достигать 400 папок или 5000 файлов или около того, а размеры файлов могут достигать нескольких гигабайт (опять же, не очень актуально при простом просмотре файлов, но актуально, потому что я собираюсь выполнить IOзадачи) ..
Есть мысли?
спасибо.