gpt4 book ai didi

java - 无法找出文件中的句子数

转载 作者:行者123 更新时间:2023-12-02 05:03:41 25 4
gpt4 key购买 nike

我正在编写一段代码来找出文件中的句子数量。我的代码如下:

 try{
int count =0;

FileInputStream f1i = new FileInputStream(s);
Scanner sc = new Scanner(f1i);
while(sc.hasNextLine()){
String g = sc.nextLine();
if(g.indexOf(".")!= -1)
count++;
sc.nextLine();

}
System.out.println("The number of sentences are :"+count);
}
catch(Exception e) {
System.out.println(e);
}

我想我检查周期数的逻辑是正确的。我编写了上面的代码,我认为是正确的,但它显示了 javautilNoElementfound : No line found 异常。我尝试了其他一些逻辑,但这是最容易理解的。但我被困在这里了。我在这个异常上使用了谷歌,它说当我们迭代没有元素的东西时会抛出它。但是我的文件包含数据。有什么办法可以解决这个异常吗?或者还有其他错误吗?提示值得赞赏!谢谢

最佳答案

您在 while 循环内调用 sc.nextLine() 两次,这就是发生错误的原因。此外,您的逻辑没有考虑同一行有两个句子的情况。你可以尝试这样的事情:int SentencePerLine = g.split(".").length;

循环应该是:

while(sc.hasNextLine()){
String g = sc.nextLine();
if(g.indexOf('.')!= -1){//check if the line contains a '.' character
count += g.split("\\.").length; // split the line into an array of Strings using '.' as a delimiter
}
}

split(...)方法我使用 "\\." 而不是 "." 因为 . 是一个正则表达式元素,需要转义。

关于java - 无法找出文件中的句子数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28002601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com