Собственно вопрос - почему если я использую в своем коде try-with-resources Валидатор пишет что необходимо закрыть ресурсы. Но ведь конструкция вида try-with-resourses неявно создаёт секцию finally в которой и происходит закрытие ресурса/ресурсов без участия разработчика. В чем тогда проблема ?
package com.javarush.task.task18.task1809;
/*
Реверс файла
*/
import java.io.*;
import java.nio.file.FileSystemException;
public class Solution {
public static void main(String[] args) {
String filename1 = null;
String filename2 = null;
byte[] buffer = null;
try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
filename1 = reader.readLine();
filename2 = reader.readLine();
} catch (IOException e) {
e.printStackTrace();
}
try (FileInputStream fileInputStream = new FileInputStream(filename1)) {
if (fileInputStream.available() > 0) {
buffer = new byte[fileInputStream.available()];
fileInputStream.read(buffer);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try(FileOutputStream fileOutputStream = new FileOutputStream(filename2)) {
for (int i = buffer.length - 1; i >= 0; i--) {
fileOutputStream.write(buffer[i]);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}