统计字符串在文件中出现的次数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Carrots_vegetables/article/details/82855048

话不多说直接上代码

package Test;

import java.io.BufferedReader;
import java.io.FileReader;
 /**
  * 写一个方法输入一个一个文件名和一个字符串,统计这个字符串出现的次数
  * @author Administrator
  *
  */
public final class MyUtil {
	
	//测试方法
	public static void main(String[] args) {
		System.out.println(MyUtil.countWordInFile("E:\\course.txt", "Workbench"));
	}
 
    // 工具类中的方法都是静态方式访问的因此将构造器私有不允许创建对象(绝对好习惯)
    private MyUtil() {
        throw new AssertionError();
    }
 
    /**
     * 统计给定文件中给定字符串的出现次数
     * 
     * @param filename  文件名
     * @param word 字符串
     * @return 字符串在文件中出现的次数
     */
    public static int countWordInFile(String filename, String word) {
        int counter = 0;
        try (FileReader fr = new FileReader(filename)) {
            try (BufferedReader br = new BufferedReader(fr)) {
            	System.out.println("br="+br);
                String line = null;
                while ((line = br.readLine()) != null) {
                    int index = -1;
                    while (line.length() >= word.length() && (index = line.indexOf(word)) >= 0) {
                        counter++;
                        line = line.substring(index + word.length());
                    }
                }
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return counter;
    }
 
}

猜你喜欢

转载自blog.csdn.net/Carrots_vegetables/article/details/82855048
今日推荐