{Java} 文件存在但仍然显示 FileNotFoundException 错误
{Java} File exists but still showing FileNotFoundException Error
我需要将整数的 .txt 文件读入二维数组,但当我尝试读入该文件时,出现运行时错误,指出找不到指定的文件。这是我第一次尝试读取文件,所以我只需要有关如何操作的指导,但我找不到这个基本的答案。
我将名为 "num1.txt" 的整数文件保存在与我的 java 文件相同的文件夹中,所以我想知道我是否不明白 eclipse 和 java 决定文件在哪里。
public static void main(String[] args) throws FileNotFoundException
{
int i;
int j;
i=0;
j=0;
int connect4Array[][] = new int[6][7];
Scanner readFile = new Scanner(new File("num1.txt"));
while(readFile.hasNextInt())
{
for(i=0;i<connect4Array.length;i++)
{
connect4Array[i++][j]=readFile.nextInt();
for(j=0;j<connect4Array[j].length;j++)
{
connect4Array[i][j++]=readFile.nextInt();
}
}
}
首先,这不是编译错误。这是一个 运行 时间错误。你需要了解其中的区别......并说出正确的话,否则人们不会理解你在说什么。
I have the file of integers named "num1.txt" saved in the same folder as as my java file.
问题是您正在尝试访问 运行ning 应用程序当前目录中的文件...但当前目录不是您认为/希望的位置。
那么应用程序的当前目录在哪里?就看你怎么运行申请了!
如果您 运行 来自 shell 的 java 应用程序,则当前目录将默认为 shell 的当前目录。
您可以在 运行 java ...
之前通过 cd
-ing 更改它,我认为您也可以使用 -Duser.dir=<pathname>
.
[ 来指定它=35=]
如果您从 Eclipse 运行 java 应用程序,则当前目录将默认为项目目录。这可能与包含源代码的目录不同。
您可以在 Eclipse 设置中为应用程序的启动器指定不同的当前目录。
或者,使用文件的绝对路径,或将其放入应用程序的 JAR 文件中并作为 "resource".
读取
将文件移动到 src 文件夹所在的位置。
因为默认是您工作区中的项目目录。
您可以使用 getProperty 来检查当前目录。
String CurrentDir = System.getProperty("user.dir");
System.out.println("Current working directory : " + CurrentDir);
我需要将整数的 .txt 文件读入二维数组,但当我尝试读入该文件时,出现运行时错误,指出找不到指定的文件。这是我第一次尝试读取文件,所以我只需要有关如何操作的指导,但我找不到这个基本的答案。
我将名为 "num1.txt" 的整数文件保存在与我的 java 文件相同的文件夹中,所以我想知道我是否不明白 eclipse 和 java 决定文件在哪里。
public static void main(String[] args) throws FileNotFoundException
{
int i;
int j;
i=0;
j=0;
int connect4Array[][] = new int[6][7];
Scanner readFile = new Scanner(new File("num1.txt"));
while(readFile.hasNextInt())
{
for(i=0;i<connect4Array.length;i++)
{
connect4Array[i++][j]=readFile.nextInt();
for(j=0;j<connect4Array[j].length;j++)
{
connect4Array[i][j++]=readFile.nextInt();
}
}
}
首先,这不是编译错误。这是一个 运行 时间错误。你需要了解其中的区别......并说出正确的话,否则人们不会理解你在说什么。
I have the file of integers named "num1.txt" saved in the same folder as as my java file.
问题是您正在尝试访问 运行ning 应用程序当前目录中的文件...但当前目录不是您认为/希望的位置。
那么应用程序的当前目录在哪里?就看你怎么运行申请了!
如果您 运行 来自 shell 的 java 应用程序,则当前目录将默认为 shell 的当前目录。
您可以在 运行
[ 来指定它=35=]java ...
之前通过cd
-ing 更改它,我认为您也可以使用-Duser.dir=<pathname>
.如果您从 Eclipse 运行 java 应用程序,则当前目录将默认为项目目录。这可能与包含源代码的目录不同。
您可以在 Eclipse 设置中为应用程序的启动器指定不同的当前目录。
或者,使用文件的绝对路径,或将其放入应用程序的 JAR 文件中并作为 "resource".
读取将文件移动到 src 文件夹所在的位置。
因为默认是您工作区中的项目目录。
您可以使用 getProperty 来检查当前目录。
String CurrentDir = System.getProperty("user.dir"); System.out.println("Current working directory : " + CurrentDir);