Advertisement
Guest User

Untitled

a guest
Apr 29th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.91 KB | None | 0 0
  1. package com.javarush.task.task19.task1907;
  2.  
  3. /*
  4. Считать с консоли имя файла.
  5. Файл содержит слова, разделенные знаками препинания.
  6. Вывести в консоль количество слов «world«, которые встречаются в файле.
  7. Закрыть потоки.
  8.  
  9.  
  10. Требования:
  11. 1. Программа должна считывать имя файла с консоли (используй BufferedReader).
  12. 2. BufferedReader для считывания данных с консоли должен быть закрыт.
  13. 3. Программа должна считывать содержимое файла (используй FileReader c конструктором String).
  14. 4. Поток чтения из файла (FileReader) должен быть закрыт.
  15. 5. Программа должна выводить в консоль количество слов "world", которые встречаются в файле.
  16. */
  17.  
  18. import java.io.BufferedReader;
  19. import java.io.FileReader;
  20. import java.io.IOException;
  21. import java.io.InputStreamReader;
  22. import java.util.regex.Matcher;
  23. import java.util.regex.Pattern;
  24.  
  25. public class Solution {
  26. public static void main(String[] args) throws IOException {
  27. Pattern p = Pattern.compile("(world)\\b");
  28. Matcher m;
  29.  
  30.  
  31. BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  32. String file = reader.readLine();
  33. reader.close();
  34.  
  35. BufferedReader fileReader = new BufferedReader(new FileReader(file));
  36. int count = 0;
  37. String string;
  38.  
  39.  
  40. while ((string=fileReader.readLine())!=null){
  41.  
  42. m = p.matcher(string);
  43. while(m.find()) {
  44. count++;
  45. }
  46. }
  47. fileReader.close();
  48. System.out.println(count);
  49.  
  50.  
  51. }
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement