в директории
directoryName
ищутся файлы не более 50 байт сортируются по имени файла и их содержимое записывается в файл
fileReName
но вместо ожидаемого вывода
result
result2
я получаю
result爊獥汵㉴
public class Solution {

    public static void main(String[] args) {
        TreeMap<String, String> map = new TreeMap<>();
        String directoryName = args[0];
        String resultFileAbsolutePath = args[1];

        File directoryNameFile = new File(directoryName);
        File resultFile = new File(resultFileAbsolutePath);
        File fileReName = new File(resultFile.getParentFile() + "/allFilesContent.txt");

        if (FileUtils.isExist(fileReName)) {
            FileUtils.deleteFile(fileReName);
        }
        FileUtils.renameFile(resultFile, fileReName);

        new Solution().findFiles(directoryNameFile, map);

        try (FileOutputStream fos = new FileOutputStream(fileReName, true)) {
            for (Map.Entry<String, String> entry : map.entrySet()) {
                File iFile = new File(entry.getValue());
                try (FileInputStream fis = new FileInputStream(iFile)) {
                    while (fis.available() > 0) {
                        fos.write(fis.read());
                    }
                    fos.write("\n".getBytes());
                }
            }
        } catch (Exception e) {
        }


    }

    public void findFiles(File fileName, Map<String, String> map) {
        for (File file : Objects.requireNonNull(fileName.listFiles())) {
            if (file.isDirectory()) {
                findFiles(file, map);
            } else if (file.isFile()) {
                if (file.length() <= 50) {
                    System.out.println("добавили файл " + file.getName());
                    map.put(file.getName(), file.getAbsolutePath());
                }
            }
        }
    }
}