【发布时间】:2018-09-26 21:15:06
【问题描述】:
import java.util.Scanner;
import java.io.*;
public class scanners {
public static void main(String[] args) {
File testFile = new File("names.txt");
// Scanner sc = new Scanner(testFile);
System.out.println(System.getProperty("user.dir"));
}
}
这段代码的输出是C:\Users\steve\eclipse-workspace\a3,我的names.txt 放在这个文件夹中。但是,当我取消注释创建扫描仪对象的代码时,我得到一个FileNotFoundException。我做错了什么?
编辑
import java.util.Scanner;
import java.io.*;
public class scanners {
public static void main(String[] args) {
Scanner sc = null;
try {
sc = new Scanner(new File("names.txt"));
}
catch(FileNotFoundException e) {
System.out.println("Problem reading the data file. Returning null for Scanner"
+ "object. Problems likely to occur." + e);
}
System.out.println(sc.nextLine());
}
}
由于某种原因,这种格式可以正常工作,但我之前发布的格式不能。我真的不知道为什么。
【问题讨论】:
-
如果您在命令提示符下执行
dir C:\Users\steve\eclipse-workspace\a3\names.txt,它会列出文件吗? -
文件实际上是否名为
names.txt.txt并且扩展名只是隐藏在您的视图中?似乎发生在 Windows 机器上。 -
命令提示符列出文件,names.txt.txt不起作用
-
应用程序资源在部署时将成为嵌入式资源,因此明智的做法是立即开始访问它们。 embedded-resource 必须通过 URL 而不是文件访问。请参阅info. page for embedded resource 了解如何形成 URL。
标签: java io java.util.scanner