Содержимое файла:
This world, are a biggest world. World are fantastic, colorful world.
Love you this world? A world have love you.Because is magigworld. worldworld
Нет слова, выведет ноль, есть - выведет сколько.
package com.javarush.task.task19.task1907;
/*
Считаем слово
Считать с консоли имя файла.
Файл содержит слова, разделенные знаками препинания.
Вывести в консоль количество слов "world", которые встречаются в файле.
Закрыть потоки.
Требования:
1. Программа должна считывать имя файла с консоли (используй BufferedReader).
2. BufferedReader для считывания данных с консоли должен быть закрыт.
3. Программа должна считывать содержимое файла (используй FileReader c конструктором принимающим String).
4. Поток чтения из файла (FileReader) должен быть закрыт.
5. Программа должна выводить в консоль количество слов "world", которые встречаются в файле.
*/
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
StringBuilder builder = new StringBuilder();
FileReader fileReader = new FileReader(reader.readLine());
reader.close();
int count = 0;
try {
while (fileReader.ready()){
builder.append((char)fileReader.read());
}
fileReader.close();
}catch (IOException e){
e.printStackTrace();
}
try {
Pattern p = Pattern.compile("world");
Matcher m = p.matcher(builder.toString());
while (m.find()){
count++;
}
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(count);
}
}