Java:无法解析文件
以下代码返回以下错误消息:Java:无法解析文件,java,Java,以下代码返回以下错误消息: 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 (FileNotFoundEx
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循环位于不同的类中,还是因为其他原因。任何帮助都将不胜感激。谢谢不要在main方法中处理FileNotFound异常,而是在
openFile()方法中处理它
现在,您正试图访问尚未定义变量的文件
方法。file
变量仅在openFile()
方法中定义
您还可以在main方法上方定义它。如果这样做,那么类中的每个方法都可以访问它
任何一种解决方案都能解决你的问题。选择最适合您需要的方法。文件仅在您声明它的方法中可用。“这是因为文件位于不同的类”不同的方法,但这是问题所在。file.toString()
无法解析为类型,因为它没有在您试图使用的类或方法的上下文中声明,所以实际上不清楚您在问什么。谢谢您的帮助。有没有一种方法可以在两种方法中定义file变量?是的,您可以在main方法之上定义它。如果这样做,那么类中的每个方法都可以访问它。