java.io.FileNotFoundException,找不到文件

时间:2011-07-01 13:28:53

标签: java file-io filenotfoundexception

我只是想逐行阅读文件。 这本来就很简单,但我无法做到这一点!

String fileName = "C:/Users/Diogo/Desktop/Krs_Grafo/Graph.txt";
FileReader file = new FileReader(fileName);
BufferedReader inputStream = new BufferedReader(file);
System.out.println(inputStream.readLine());

我一直收到错误:

Exception in thread "main" java.io.FileNotFoundException: C:\Users\Diogo\Desktop\Krs_Grafo\Graph.txt (O sistema não pode encontrar o arquivo especificado)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at java.io.FileReader.<init>(FileReader.java:41)
at krs_grafo.Krs_Grafo.main(Krs_Grafo.java:51)
Java Result: 1

系统无法找到该文件,但我确定它就在那里! 我在Windows 7上使用Netbeans 7.0。

有什么建议吗?

如评论中所述,它正在搜索“Graph”而不是“Graph.txt”。这是我以前的执行,我尝试没有扩展名。所以,我编辑它是连贯的。它仍然无效。

4 个答案:

答案 0 :(得分:9)

这里的问题是文件名实际上是“ Graph.txt.txt ”,我看不到因为隐藏了扩展程序

感谢用户“Michael Brewer-Davis”在评论中询问“给定目录中cd和dir的输出”。

同时指出/和\\工作正常。

答案 1 :(得分:0)

  1. 正如JB Nizet在评论中指出的那样,错误消息暗示程序试图打开“Graph”文件(不是路径而没有扩展名),这与您向我们展示的代码不兼容。您确定该错误消息来自运行该代码吗? Didi你试着调试它(一步一步)?

  2. Windows 7?也许你更喜欢在一些“漂亮”的目录中设置一个工作目录,比如C:\wk\或类似的东西,这样你就可以排除权限问题并且路径更短。

  3. 关于反击的一些答案的建议是不相关的。正斜杠在Windows中的Java中运行良好。无需担心。

答案 2 :(得分:0)

您需要添加try catch块。

public static void main(String...args){
     String fileName = "C:/Users/DY.Liu/Desktop/Krs_Grafo/Graph.txt";
    try{
        FileReader file = new FileReader(fileName);
        BufferedReader inputStream = new BufferedReader(file);
        System.out.println(inputStream.readLine());
    } catch (FileNotFoundException e){
        e.printStackTrace();

    } catch (IOException e){

    }
}

答案 3 :(得分:0)

我遇到了与java.io.FileNotFoundException类似的问题。我从电子邮件中下载了一个项目,解压缩并存储在我的桌面上, NOT 我的工作区导致了FileNotFoundException。

为了获得正确的路径,我复制了导入项目时显示的确切路径。这解决了我的问题。