В условии сказано, что все слова разделены знаками препинания. Я вроде как все существующие знаки препинания проверяю, при этом валидатор говорит, что я нашел не все слова. Значит какие то знаки препинания еще существуют? Либо в условии должна была звучать фраза не "знаки препинания", а "небуквенные" символы, например.
package com.javarush.task.task19.task1907;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
/*
Считаем слово
*/
public class Solution {
public static void main(String[] args) throws Exception {
String fileName=null;
String c = ".,-:;?!";
try (BufferedReader r = new BufferedReader(new InputStreamReader(System.in))) {
fileName=r.readLine();
}
// fileName="c:/work/java/test.txt";
int countWorlds=0;
String world="";
try(FileReader fr = new FileReader(fileName)) {
while(fr.ready()) {
int curChar = fr.read();
if (c.indexOf((char) curChar) == -1) {
world+=(char) curChar;
}
else {
world+=",";
}
}
String[] array = world.split(",");
for (int i = 0; i < array.length; i++) {
if ("world".equals(array[i])) {
countWorlds++;
}
}
}
System.out.println(countWorlds);
}
}