以下代码返回以下错误消息:
package demo3;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
public class App {
public static void main(String[] args) {
try {
openFile();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("File not found: " + file.toString());
}
}
public static void openFile() throws FileNotFoundException {
File file = new File("test.txt");
FileReader fr = new FileReader(file);
}
}
错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
file cannot be resolved
at demo3.App.main(App.java:13)
我不确定这是否是因为该文件与try catch循环位于不同的类中,或者是否由其他内容引起。任何帮助将非常感激。感谢
答案 0 :(得分:0)
不要在main方法中处理FileNotFound异常,而是在openFile()
方法中处理它。
现在您正在尝试访问尚未定义变量的file
方法。 file
变量仅在openFile()
方法中定义。
您也可以在主方法上方定义它。如果你这样做,你班上的每个方法都可以访问它。
任何一种解决方案都可以解决您的问题。选择最适合您需求的那个。