我在这里遇到了这段代码的问题。我希望能够显示仅包含单词" LANTALK"的文件的输出。我的收获似乎并不合适。你知道在这种情况下我应该抛出哪个例外吗?
try {
sc = new Scanner(filename);
while(sc.hasNext()) {
String line=sc.nextLine();
if(line.contains("LANTALK"))
System.out.println(line);
}
} catch (FileNotFoundException e) {
System.out.println("The file \""+log+"\" was not found");
}
答案 0 :(得分:0)
只需使用e.printStackTrace()
try
{
sc = new Scanner(filename);
while(sc.hasNext())
{
String line=sc.nextLine();
if(line.contains("LANTALK"))
System.out.println(line);
}
} catch (FileNotFoundException e)
{
e.printStackTrace();
}
答案 1 :(得分:0)
这一切都取决于如何处理此方法和可能的异常。 可能你不应该抛出异常但返回boolean来表示文件是否包含该关键字。例如:
private boolean isValidFile(final String filename) throws IOException
{
FileReader fr = new FileReader(filename);
BufferedReader br = new BufferedReader(fr);
String line;
while((line = br.readLine()) != null)
{
if(line.contains("LANTALK"))
{
return true;
}
}
return false;
}