为什么我的程序找不到我想扫描的文本文件?

时间:2016-03-24 14:07:23

标签: java

我试图将文件放在尽可能多的地方,看看它们是否有效。我也尝试使用直接路径,但也没有用。我有一个mac,我想知道这是否搞砸了。

public static void main(String[] args) throws FileNotFoundException{
    String nextString=null;
    PopularName nextName;
    String[] info=new String[5];
    Scanner infile = new Scanner(new File("LastNames.txt"));    

...

2 个答案:

答案 0 :(得分:0)

如果您使用

System.getProperty("user.dir");

您可以获取项目的当前根目录。 所以,如果你把文件放在那里你就可以读到:

new FileReader(System.getProperty("user.dir") + "/LastNames.txt");

答案 1 :(得分:0)

您的代码中有更多错误:

  1. Scanner将参数作为参数File(FileReader在这里没有意义),
  2. 您没有关注例外情况 - > try-catch块或你的方法必须将它抛到上一级 - 参见下面的工作示例。
  3. file的路径应该是相对于绝对项目的根目录。

    public class Main {
        public static void main(String[] args) throws FileNotFoundException {
            Scanner inFile = new Scanner(new File("file.txt"));
            while (inFile.hasNext()) {
                System.out.println(inFile.next());
            }
        }
    }