JAVA木卫一。FileNotFoundException。正在尝试传入参数[0]
<>我一直试图把我的C++代码转换成java,我特别是在文件输入上被卡住了。p>String inputfilename = args[0];
Scanner infile = new Scanner (new FileInputStream(inputfilename));
这一直给我一个java。木卫一。FileNotFoundException错误。我试图传入的文件“StackData.txt”被正确地放入命令行参数中。我已经把它放在根目录和project\src\文件夹中,它们都不适合我。我试着给inputfilename字符串命名,并喜欢-
String inputfilename = "StackData.txt";
Scanner infile = new Scanner (new FileInputStream(inputfilename));
这似乎也不起作用。也不尝试将目录路径抛出到字符串名称中。我在什么地方犯了一个真正幼稚的错误吗
我试过使用
File infile = new File(args[0]);
如果我尝试使用while循环的方法
while (infile.hasNextInt()){ blah blah
}
它说这个方法无法解析,我想这意味着要使用hasNextInt()方法,我必须用FileInputStream初始化文件
# 1 楼答案
文件中的简单代码会相应地使用
# 2 楼答案
每个java jvm都有一条工作路径。通常情况下,jvm的启动位置是相同的。但你总能改变这一切
IDE设置了默认的工作路径。根据您的IDE,这可以在开始选项中更改
要查找当前工作路径,只需打印当前目录的绝对路径:
如果您使用的是相对路径,那么您的文件应该位于该文件夹中
无论如何,使用绝对路径都不应引发任何FNF异常
要使用扫描仪,可以使用以下示例:
请注意,您试图在没有这种方法的
File
对象上调用hasNextInt()
。必须在Scanner
对象上调用它