Совершенно потерял хватку и не могу сориентироваться.
При компиляции валидатор кричит. Помогите, пожалуйста.
Ошибка в файле com/javarush/task/task31/task3101/Solution.java в строке : 35
Не найден метод "of(java.lang.String)" в интерфейсе "java.nio.file.Path"
Сама программа запускается, переименовывает файл, сортирует список файлов и пишет в файл.
package com.javarush.task.task31.task3101;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.*;
/*
Проход по дереву файлов
*/
public class Solution {
public static void main(String[] args) throws FileNotFoundException {
File path = new File(args[0]);
File source = new File(args[1]);
File dest = new File(source.getParent() + "\\allFilesContent.txt");
if (FileUtils.isExist(source)) {
FileUtils.renameFile(source, dest);
} else {
System.out.println("doesn't exist");
}
HashMap<File, String> files = getFiles(path, new HashMap<File, String>());
Set<Map.Entry<File, String>> entrySet = files.entrySet();
List<Map.Entry<File, String>> sortedFilesList = new ArrayList<>(entrySet);
Collections.sort(sortedFilesList, (o1, o2) -> o1.getValue().compareTo(o2.getValue()));
try (FileOutputStream fos = new FileOutputStream(dest)) {
for (Map.Entry<File, String> entry: sortedFilesList) {
fos.write(Files.readAllBytes(Path.of(entry.getKey().getAbsolutePath())));
fos.write(10);
fos.write(10);
}
} catch (IOException e) {
}
}
public static HashMap<File, String> getFiles(File folder, HashMap<File, String> list) {
HashMap<File, String> fileList = list;
File[] filesHere = folder.listFiles();
for (File file : filesHere) {
if (file.isDirectory()) {
fileList.putAll(getFiles(file, fileList));
} else {
if (file.length() <= 50) {
fileList.put(file, file.getName());
}
}
}
return fileList;
}
}