Помогите! Ментор пишет: Исключение системы безопасности JavaRush. Вы выполняете потенциально опасную или запрещенную операцию.
Так,выводит и считает, вроде верно. в чем причина?
package com.javarush.task.task31.task3113;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
/*
Что внутри папки?
C:\Users\ДмАлИвАн\Desktop\тестирование\fafa.txt
*/
public class Solution {
public static void main(String[] args) throws IOException {
try (
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
) {
System.out.println("Vvedite polniy pyt k direktorii: ");
String path = reader.readLine();
File file = new File(path);
if (!(file.isDirectory())) {
System.out.println(file.getAbsolutePath() + " - не папка");
} else {
int countDir=countDir(file);
System.out.println("Всего папок - "+ countDir);
int counFiles=countFiles(file);
System.out.println("Всего файлов - "+counFiles);
int countBytes=countBytes(file);
System.out.println("Общий размер - "+countBytes);
}
}
}
private static int countDir=0;
private static int countFiles = 0;
private static int countBytes = 0;
private static int countDir(File file) {
for (File x : file.listFiles()) {
if (x.isDirectory()) {
countDir++;
countDir(x);
}
}
return countDir;
}
private static int countFiles(File file) {
for (File x : file.listFiles()) {
if (x.isDirectory()) countFiles(x);
else countFiles++;
}
return countFiles;
}
private static int countBytes(File file){
for (File x : file.listFiles()) {
if (x.isDirectory()) countBytes(x);
else countBytes+=x.length();
}
return countBytes;
}
}