Привет, помогите, пожалуйста, с объяснением почему не проходит условие. Закомментирован второй вариант, где ошибкой является “убедить что инфа пишется во второй файл”.
Спасибо за помощь!
package com.javarush.task.task19.task1925;
/*
Длинные слова
1. Программа НЕ должна считывать данные с консоли.
2. Программа должна считывать содержимое первого файла (используй FileReader c конструктором String).
3. Поток чтения из файла (FileReader) должен быть закрыт.
4. Программа должна записывать через запятую во второй файл все слова из первого файла длина которых строго больше 6(используй FileWriter).
5. Поток записи в файл (FileWriter) должен быть закрыт.
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader(args[0]));
BufferedWriter writer = new BufferedWriter(new FileWriter(args[1]));
while (reader.ready()) {
String[] line = reader.readLine().split(" ");
for (String out : line) {
if (out.length() > 6) {
out += out + ",";
writer.write(out.replaceAll(",$", ""));
}
}
}
reader.close();
writer.close();
}
}
/*
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader(args[0]));
BufferedWriter writer = new BufferedWriter(new FileWriter(args[1]));
while (reader.ready()) {
String[] line = reader.readLine().split(" " + ",") ;
for (String s : line) {
if (s.matches("\\S{7,}")) {
writer.write(s);
}
}
}
reader.close();
writer.close();
}
}
*/