В метод main первым параметром приходит имя файла1, вторым - файла2. Файл1 содержит строки со словами, разделенными пробелом.
Записать через пробел в Файл2 все слова, которые содержат цифры, например, а1, abc3d или 564.
Закрыть потоки.
Требования:
Программа НЕ должна считывать данные с консоли.
Программа должна считывать содержимое первого файла (используй FileReader c конструктором String).
Поток чтения из файла (FileReader) должен быть закрыт.
Программа должна записывать во второй файл все слова из первого файла которые содержат цифры (используй FileWriter).
Поток записи в файл (FileWriter) должен быть закрыт.
Верно. Этот код так и выполнит, но:
Согласно условий задачи, в файле не может быть
aaa1,bbb2,ccc3
В условии: "Файл1 содержит строки со словами, разделенными пробелом."
Запятая не может быть частью слова, поэтому в коде не учитывается.
Или должна учитываться?
Тогда почему такая конструкция попадает в результат?
В комментариях пишут, что там вообще любые символы могут быть.
И судя по тем же комментариям, слова состоящие из одних цифр таки могут быть.
for(char c : charsList){if(c =='\n') strBuild.append(" ");elseif(Character.isLetterOrDigit(c)||Character.isSpaceChar(c)|| c =='-'|| c =='\'') strBuild.append(c);}
Забыл учесть, что слова могут содержать дефисы и апостровы.
Но результат проверки от этого не изменился.
Может ещё какие-то символы, которые могут встречаться в словах, не учтены?
Чего же решение не принимается?