Если сортировка в TreeMap действительно кривая, как ее переписать под файлы?
first.getName().compareTo(second.getName()) нифига не помогает :(
package com.javarush.task.task31.task3101;
import java.io.*;
import java.util.*;
/*
Проход по дереву файлов
*/
public class Solution {
public static void main(String[] args) throws IOException {
File path = new File(args[0]);
File resultFileAbsolutePath = new File(args[1]);
File allFilesContent = new File(resultFileAbsolutePath.getParent()+File.separator+"allFilesContent.txt");
FileUtils.renameFile(resultFileAbsolutePath, allFilesContent);
TreeMap<File, String> map = new TreeMap();
//помещаем все файлы <=50 байт в map
for (File files:path.listFiles()) {
if (files.length()<=50){
map.put(new File(files.getAbsolutePath()), null);
}
}
//System.out.println(allFilesContent.getAbsolutePath());
//записываем все файлы map в файл allFilesContent
FileOutputStream fileOutputStream=new FileOutputStream(allFilesContent);
for (Map.Entry<File, String> entry: map.entrySet()) {
//System.out.println(entry.getKey().getName());
FileInputStream fileInputStream = new FileInputStream(entry.getKey());
while (fileInputStream.available()>0) {
fileOutputStream.write(fileInputStream.read());
}
fileOutputStream.write("\n".getBytes());
fileInputStream.close();
}
fileOutputStream.close();
}
}