Java 关于阅读单词的快速调试
我有这个代码,运行程序时收到一个错误。我是不是做错了什么Java 关于阅读单词的快速调试,java,Java,我有这个代码,运行程序时收到一个错误。我是不是做错了什么 import java.io.*; import java.util.*; public class countLines { public static void main(String[] args) throws Exception { int count = 0; int word = 0; File f = new File("file.txt"); Sc
import java.io.*;
import java.util.*;
public class countLines {
public static void main(String[] args) throws Exception {
int count = 0;
int word = 0;
File f = new File("file.txt");
Scanner input = new Scanner(f);
while(input.hasNext()){
String words = input.next();
word++;
}
while (input.hasNextLine()) {
input.nextLine();
count++;
}
input.close();
System.out.println("Number of Line: " + count);
System.out.println("This file has " + word + " words.");
}
}
在第一个
while
循环中,您正在读取文件,然后关闭它。然后,在下一个while
循环中,再次尝试读取文件。这将触发一个错误,因为文件已关闭 “一个错误”是非常模糊的。什么错误?帮我们一点忙。看起来您尝试读取输入,关闭它,然后读取,然后再次关闭它。。。这是错误的。我想真的没有错误,我只是不能同时运行单词计数和行计数。Eclipse将我踢出控制台选项卡,并将我带到调试选项卡。它会数一数单词,然后给我0表示行数。我是否要删除其中一个结束语句?或者两者都可以?或者只需关闭第一个.close()
。但是您需要转到文件的开头again@Eduardo+1,我错过了。好吧,重新打开文件,但它还是算作一个或另一个。