系统找不到在 java 中指定的文件

2022-09-01 17:59:09

我正在制作一个打开和读取文件的程序。这是我的代码:

import java.io.*;

public class FileRead{
    public static void main(String[] args){
        try{
            File file = new File("hello.txt");
            System.out.println(file.getCanonicalPath());
            FileInputStream ft = new FileInputStream(file);

            DataInputStream in = new DataInputStream(ft);
            BufferedReader br = new BufferedReader(new InputStreamReader(in));
            String strline;

            while((strline = br.readLine()) != null){
                System.out.println(strline);
            }
            in.close();
        }catch(Exception e){
            System.err.println("Error: " + e.getMessage());
        }
    }
}

但是当我运行时,我得到这个错误:

C:\Users\User\Documents\Workspace\FileRead\hello.txt
Error: hello.txt (The system cannot find the file specified)

my 和 where 在同一目录中,可以在以下位置找到:FileRead.javahello.txt

C:\Users\User\Documents\Workspace\FileRead

我想知道我做错了什么?


答案 1

尝试通过调用以下电列出目录中所有文件的名称:

File file = new File(".");
for(String fileNames : file.list()) System.out.println(fileNames);

,看看您是否会在列表中找到您的文件。


答案 2

我已经复制了您的代码,它运行良好。

我怀疑您只是在hello.txt的实际文件名中遇到了一些问题,或者您在错误的目录中运行。考虑使用@Eng.Fouad建议的方法进行验证