Java 我需要使用try-catch,但它说这是一个无法访问的catch块。我如何使它可以到达?
我对编码是新手,对java也是新手,所以请容忍我,我很抱歉 我的教授说我们需要使用以下代码作为我们作业的一部分。我已经查看了我所有的课堂笔记,但在try-catch上找不到任何内容,我也不确定应该在insert-code部分中添加什么,或者错误消息的含义 很抱歉,我只是很困惑。我一直在 “FileNotFoundException的捕获块不可访问。此异常从不从try语句体引发” 我不知道该怎么解决它Java 我需要使用try-catch,但它说这是一个无法访问的catch块。我如何使它可以到达?,java,try-catch,filenotfoundexception,Java,Try Catch,Filenotfoundexception,我对编码是新手,对java也是新手,所以请容忍我,我很抱歉 我的教授说我们需要使用以下代码作为我们作业的一部分。我已经查看了我所有的课堂笔记,但在try-catch上找不到任何内容,我也不确定应该在insert-code部分中添加什么,或者错误消息的含义 很抱歉,我只是很困惑。我一直在 “FileNotFoundException的捕获块不可访问。此异常从不从try语句体引发” 我不知道该怎么解决它 try { File file = new File( args [ 0 ] );
try
{
File file = new File( args [ 0 ] );
Scanner scanner = new Scanner( file );
//insert code
scanner.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
编辑:在修复错误后,我再也没有遇到这个错误,直到我努力编写一个文本文件来测试它
try
{
File file = new File( args [ 0 ] );
Scanner scanner = new Scanner("cat.txt");
//insert code
scanner.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
try
{
File file = new File( args [ 0 ] );
Scanner scanner = new Scanner("cat.txt");
//insert code
scanner.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
我再次得到“FileNotFoundException的不可访问捕获块。此异常从未从try语句体中抛出”
我应该在try语句中添加什么?我迷路了欢迎来到so!异常是捕获错误并决定如何处理它们的好方法。某些代码段要求程序进行跳跃,并尝试执行当时可能无法执行的任务 问题中指定的错误是由于扫描仪未在指定的文件路径上找到文件造成的。ArrayIndexOutOfBounds准确指示异常状态。正在访问的索引超出数组的边界(大小) Java文档是一个很好的资源,这应该有助于澄清catch语句的用途。 在修复错误后,我再也没有遇到这个错误,直到我努力编写一个文本文件来测试它
try
{
File file = new File( args [ 0 ] );
Scanner scanner = new Scanner("cat.txt");
//insert code
scanner.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
try
{
File file = new File( args [ 0 ] );
Scanner scanner = new Scanner("cat.txt");
//insert code
scanner.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
我再次得到FileNotFoundException的“无法访问的捕获块”
与不同。如果您查看文档,第一个(使用字符串
)从字符串读取,而不是从文件读取。由于不涉及任何文件,因此不存在文件NotFoundException
如果您想为测试目的硬编码文件名,请在新文件(…)
行中执行,而不是在新扫描仪(…)
行中执行:
try
{
File file = new File("cat.txt"); // <==== Here
Scanner scanner = new Scanner(file);
//insert code
scanner.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
试试看
{
File File=new File(“cat.txt”);//您的扫描仪
声明中缺少分号。您列出的错误肯定不是由您引用的代码引起的。FileNotFoundException
确实是由新扫描仪(文件)
引发的。您引用的代码不会编译,原因不同(在新建扫描仪(文件)
之后缺少;
),但这并不是因为FileNotFoundException
不是由该块引发的。也许您有一个不同的块,您没有显示该块包含从未引发异常的代码…?您好,我编辑了它,不再有该错误,但现在当我运行代码时,我得到“线程“main”java.lang.ArrayIndexOutOfBoundsException中的异常:templates.sentenceUtilTest.main(sentenceUtilTest.java:26)处长度为0的索引0超出范围“当您以JVM参数的形式执行代码时,需要传递文件名或路径。例如,java Myclass。可能是重复的谢谢!我现在遇到了一个不同的错误,我可能只需要发布一个单独的问题,但我想我应该在try语句中添加更多的代码,我不确定是什么。编译代码时,我得到了一个不同的问题线程“main”java.lang.ArrayIndexOutOfBoundsException中的异常:templates.SentenceUtilTest.main(SentenceUtilTest.java:26)处长度为0的索引0超出界限