Вроде как все работает
package com.javarush.task.task31.task3101;
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
/*
Проход по дереву файлов
*/
public class Solution {
public static void main(String[] args) throws IOException {
File resultFileAbsolutePath=new File(args[1]);
File file=new File(args[0]);
HashMap map =new HashMap();
ArrayList<String> list=new ArrayList<String>();
for (File file1:file.listFiles()){
if(file1.length() <= 50){
String name= file1.getName();
map.put(name,file1);
list.add(name);
}
}
Collections.sort(list);
File file1=new File(resultFileAbsolutePath.getParent()/*Почему мы не можем просто написать allFilesContent.txt*/+"/allFilesContent.txt");
FileUtils.renameFile(resultFileAbsolutePath, file1);
BufferedWriter writer =new BufferedWriter(new FileWriter(resultFileAbsolutePath));
for (int i = 0; i < list.size(); i++){
File as = (File) map.get(list.get(i));
BufferedReader reader=new BufferedReader(new FileReader(as));
String r="";
while ((r = reader.readLine())!=null){
writer.write(r);
}
writer.write("\n");
reader.close();
}
writer.close();
}
}