我只是想逐行阅读文件。 这本来就很简单,但我无法做到这一点!
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”。这是我以前的执行,我尝试没有扩展名。所以,我编辑它是连贯的。它仍然无效。
答案 0 :(得分:9)
这里的问题是文件名实际上是“ Graph.txt.txt ”,我看不到因为隐藏了扩展程序。
感谢用户“Michael Brewer-Davis”在评论中询问“给定目录中cd和dir的输出”。
同时指出/和\\工作正常。
答案 1 :(得分:0)
正如JB Nizet在评论中指出的那样,错误消息暗示程序试图打开“Graph”文件(不是路径而没有扩展名),这与您向我们展示的代码不兼容。您确定该错误消息来自运行该代码吗? Didi你试着调试它(一步一步)?
Windows 7?也许你更喜欢在一些“漂亮”的目录中设置一个工作目录,比如C:\wk\
或类似的东西,这样你就可以排除权限问题并且路径更短。
关于反击的一些答案的建议是不相关的。正斜杠在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。
为了获得正确的路径,我复制了导入项目时显示的确切路径。这解决了我的问题。