import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class WordJumble {
public static void main(String[] args) throws FileNotFoundException {
// TODO Auto-generated method stub
File file = new File("F:/Files/Topic.txt");
Scanner sc = new Scanner(file);
String title = sc.nextLine();
System.out.println(title);
for(int i=0;i<10;i++){
System.out.println(sc.nextLine());
}
}
}
目前,该计划做什么,我希望它,但为什么它给我一个错误的文件不存在?当我添加 throws
子句忽略错误它可以找到文件而没有问题。
2条答案
按热度按时间nx7onnlm1#
当您说“addthestatementoignoretheerror”时,您的意思是将“throws…”子句添加到
main
所以它会编译得很干净。正确的?怎么回事
Scanner
许多人投一个球FileNotFoundException
如果找不到文件。必须在某处处理(捕获)此异常。相反,您选择不处理,并说它可以从
main
.正确的方法是使用
try - catch
建筑。使用这种方法是为了使错误处理与代码的主流程“脱节”。
5t7ly7z52#
虽然错误的措辞可能有点混乱,但错误本身并不是filenotfoundexception,而是抱怨您没有处理引发此类异常的可能性。编译器告诉您的是,您需要处理文件可能不在您认为的位置的问题。因此,当您添加
throws FileNotFoundException
对于方法签名,编译器会满意,错误也会消失。