java - 计算文件中的单词数

标签 java algorithm loops io

我在计算文件中的字数时遇到问题。我采用的方法是,当我看到一个空格或一个换行符时,我就知道要数一个字了。

问题是,如果我在段落之间有多行,那么我最终也会将它们计为单词。如果您查看 readFile() 方法,您就会明白我在做什么。

你能帮我解决这个问题并指导我正确的方向吗?

示例输入文件(包括一个空行):

word word word
word word

word word word

最佳答案

您可以将 Scanner 与 FileInputStream 一起使用,而不是将 BufferedReader 与 FileReader 一起使用。例如:-

File file = new File("sample.txt");
try(Scanner sc = new Scanner(new FileInputStream(file))){
    int count=0;
    while(sc.hasNext()){
        sc.next();
        count++;
    }
System.out.println("Number of words: " + count);
}

关于java - 计算文件中的单词数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4094119/

相关文章:

java - 如何在 PowerMockito 中使用 WhiteBox 模拟方法

python - 如何保存使用子进程循环 python 脚本的脚本的输出?

java - 循环不执行多次

c - C 中计数和计数位的输出不正确

algorithm - 试图了解 "LibrarySort"?

algorithm - 加权 Nim 是堆叠而不是堆叠,每个玩家从相反的方向挑选

java - RoboSpice 和 ORMLite - 访问数据

java - Spring MVC - 将变量从一个页面传递到另一个页面

java - 从 Java 字符串中提取文本

c++ - 飞越等 ionic 分形 - 菱形方算法