Все работает, как часики. Есть идеи, что не так?
package com.javarush.task.task31.task3101;
import javax.swing.*;
import java.io.*;
import java.util.ArrayList;
import java.util.TreeSet;
/*
Проход по дереву файлов
*/
public class Solution {
public static void main(String[] args) throws IOException {
// File path = new File ("C:/java_test/");
// File resultFileAbsolutePath = new File("C:/java_test/XXX.txt");
File path = new File(args[0]);
File resultFileAbsolutePath = new File (args[1]);
File allFilesContent = new File(resultFileAbsolutePath.getParent() + "/allFilesContent.txt");
FileUtils.renameFile(resultFileAbsolutePath, allFilesContent );
//File folder = new File(path);
TreeSet<String> set = new TreeSet();
if (path.exists() & path.isDirectory()) {
set = getFilesLess50(path.getPath(), null);
}
else
System.out.println("Path " + path + " does't exist");
BufferedWriter outputStream = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(allFilesContent )));
for (String line : set) {
outputStream.write(line + '\n');
}
outputStream.flush();
outputStream.close();
}
public static TreeSet getFilesLess50 (String folder, TreeSet set){
if (set == null) set = new TreeSet<>();
File files = new File(folder);
for (File file : files.listFiles()) {
if (file.isDirectory()){
getFilesLess50(file.getAbsolutePath(), set);
continue;
}
if (file.length() > 50 )
FileUtils.deleteFile(file);
else
set.add(file.getName());
}
return set;
}
}