Не могу разобраться, что не нравится валидатору? Провел тест с двумя файлами.
Содержание первого файла:
некрополь утюг яйца покупка ячмень проверка зачет незачет истребитель самолет хрен длинное короткое аббревиатура чек гранат бомбой ядерно свеча соковыжималка
Содержание второго файла:
некрополь,покупка,проверка,незачет,истребитель,самолет,длинное,короткое,аббревиатура,соковыжималка
В чем проблема валидатора? P.S. Изначально было решение через сплиты с BufferedReader и BufferedWriter, однако по условию надо именно FileReader и FileWriter. Есть идея с другого вопроса вернуть старое решение, а потоки FileReader и FileWriter открыть и закрыть для галочки. В целом, все же интересно, почему не хочет принимать данное решение. package com.javarush.task.task19.task1925;
/*
Длинные слова
*/
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
import java.util.List;
public class Solution {
public static void main(String[] args) throws Exception {
FileReader reader = new FileReader(args[0]);
FileWriter writer = new FileWriter(args[1]);
List<String> words = new ArrayList<>();
while(reader.ready()) {
StringBuilder word = new StringBuilder();
int data = reader.read();
while((char) data != ' ') {
word.append((char) data);
if(!reader.ready())
break;
data = reader.read();
}
if(word.toString().length() > 6)
words.add(word.toString());
}
for(int i = 0; i < words.size() - 1; i++)
writer.write(words.get(i) + ",");
writer.write(words.get(words.size() - 1));
reader.close();
writer.close();
}
}