Всем привет, программа все отрабатывает, но валидацию не проходит. Подскажите пожалуйста в чем проблема!
package com.javarush.task.task31.task3101;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.*;
/*
Проход по дереву файлов
*/
public class Solution {
public static void main(String[] args) throws IOException {
ArrayList <File> list = new ArrayList<>();
String path = args[0],resultFileAbsolutePath = args[1];
//String path = "/home/masinc/Загрузки/test/",resultFileAbsolutePath = "/home/masinc/test.txt";
File paths = new File(path);
File result = new File(resultFileAbsolutePath);
//System.out.println(result.getAbsolutePath());
String parent = result.getParent()+File.separator+"allFilesContent.txt";
File newfile = new File(parent);
if (FileUtils.isExist(result)){
FileUtils.renameFile(result,newfile);
}
else {
newfile.createNewFile();
}
list = getFiles(paths);
sortList(list);
list.remove(result);
FileOutputStream fileOutputStream = new FileOutputStream(newfile);
for (File d: list){
FileInputStream fileInputStream = new FileInputStream(d.getAbsolutePath());
byte[] buff = new byte[fileInputStream.available()];
fileInputStream.read(buff);
fileOutputStream.write(buff);
fileOutputStream.flush();
System.out.println(d.getName());
fileOutputStream.write("/n".getBytes(StandardCharsets.UTF_8));
fileInputStream.close();
}
fileOutputStream.close();
}
public static ArrayList getFiles(File root){
ArrayList <File> files2 = new ArrayList<>();
Queue<File> queue = new PriorityQueue<>();
queue.add(root);
while (!queue.isEmpty()){
File files = queue.poll();
File[] files1 = files.listFiles();
if (files1 != null) {
for (File f : files1) {
if (f.isDirectory()) {
queue.add(f);
} else {
if (f.length() <= 50) {
files2.add(f);
; }
}
}
}
}
return files2;
}
public static void sortList(ArrayList<File> list){
Collections.sort(list,new Comparator<File>() {
@Override
public int compare(File o1, File o2) {
return o1.getName().compareTo(o2.getName());
}
});
}
}