java帮助!我如何读取文件中的行作为段落和计数单词

时间:2014-03-10 15:30:25

标签: java paragraph

我想将文件中的行读作段落。例如,如果文本行之间没有空格,则应将其视为1段,然后我想计算单词。

到目前为止,它正确计算单词,但不识别文本行作为段落。 Java初学者

Scanner file = new Scanner(new FileInputStream("/.../output.txt"));

int count = 0;

while (file.hasNextLine()) {
    String s = file.nextLine();

    count++;

    if(s.contains("#AVFC")){
        System.out.printf("There are %d words on this line ", s.split("\\s").length-1);
        System.out.println(count);
    }
}

file.close();

1 个答案:

答案 0 :(得分:1)

如果“段落”被定义为“一系列非空白行”,那么就像你为个别行所做的那样,但是将它们加起来直到你得到一个空白行(或文件末尾) ),此时您已计算刚刚完成的段落。记得在完成一个段落时重置总和,为下一个段落的开始做好准备。而且您可能需要连续处理多个空白行。

更新:不是打印出一行中的字数,而是将该数字保存到变量中,例如wordsInLine。如果它是0,那么你已经完成了一个段落(除非count为0,这意味着你还没有开始一个段落) - 所以打印你的count并重置它..如果不是,它是当前段落的一部分,因此将其添加到count。最后,一旦你完成文件,如果count不是0,你必须打印最后一段的计数。