все потоки расположены в блоке try с ресурсами, почему валидатор мне пишет ошибку:
!!!Поток записи в файл (FileWriter) должен быть закрыт.!!!
по идее при выходе из блока все потоки должны сами закрыться, разве нет?
package com.javarush.task.task19.task1923;
/*
Слова с цифрами
В метод main первым параметром приходит имя файла1, вторым - файла2.
Файл1 содержит строки со словами, разделенные пробелом.
Записать через пробел в Файл2 все слова, которые содержат цифры, например, а1 или abc3d.
Закрыть потоки.
Требования:
1. Программа НЕ должна считывать данные с консоли.
2. Программа должна считывать содержимое первого файла (используй FileReader c конструктором String).
3. Поток чтения из файла (FileReader) должен быть закрыт.
4. Программа должна записывать во второй файл все слова из первого файла которые содержат цифры (используй FileWriter).
5. Поток записи в файл (FileWriter) должен быть закрыт.
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
try(FileReader fr = new FileReader(args[0]);
FileWriter fw = new FileWriter(args[1]);
BufferedReader reader = new BufferedReader(fr);
BufferedWriter writer = new BufferedWriter(fw))
{
while(reader.ready()){
for(String s : reader.readLine().split(" ")){
if (s.matches(".*\\d.*")){
writer.write(s + " ");
}
}
}
}
}
}