Все поддиректории учитываю!!! Куда копать?
package com.javarush.task.task31.task3101;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.*;
import java.util.stream.Collectors;
/*
Проход по дереву файлов
*/
public class Solution {
public static void main(String[] args) throws IOException {
File folder = new File(args[0]);
File resultFileAbsolutePath = new File(args[1]);
File destination = new File(resultFileAbsolutePath.getParent() +"/" + "allFilesContent.txt");
List<File> fileList = new ArrayList<>();
if (FileUtils.isExist(resultFileAbsolutePath)) {
FileUtils.renameFile(resultFileAbsolutePath, destination);
}
for (File file :folder.listFiles()) {
if (file.length() <= 50) {
isFileOrDerectory(file, fileList);
}
}
ArrayList<String> listFileNames = new ArrayList<>();
for (File file: fileList) {
listFileNames.add(file.getName());
}
Collections.sort(listFileNames);
OutputStream out = new FileOutputStream(destination);
for (String name : listFileNames) {
for (File file : fileList) {
if (name.equals(file.getName())){
InputStream stream = new FileInputStream(file);
byte[] buffer = new byte[stream.available()];
stream.read(buffer, 0, buffer.length);
out.write(buffer, 0, buffer.length);
out.write(10);
stream.close();
}
}
}
out.close();
}
private static void isFileOrDerectory(File folder, List<File> fileList) {
if (folder.isFile()){
fileList.add(folder);
} else if (folder.isDirectory()){
for (File file : folder.listFiles()){
isFileOrDerectory(file, fileList);
}
}
}
}