You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java读取c:\Java\teste.txt文件时触发FileNotFoundException异常求助

问题排查原因及解决方法

常见触发原因

  • 文件路径/名称不匹配
    • Windows默认隐藏已知文件扩展名,你实际存储的文件可能为teste.txt.txt而非teste.txt,请先在资源管理器顶部「查看」选项卡中勾选「文件扩展名」,核对文件完整名称
    • 确认c:\Java目录真实存在:按下Win+R输入c:\Java回车,验证目录可正常打开,且目录内确实存在对应名称的txt文件
  • 权限不足
    右键点击c:\Java文件夹,选择「属性」-「安全」,确认当前运行Java程序的用户账号拥有该目录的「读取」权限
  • 转义写法问题
    你当前用双反斜杠\\做路径转义是正确的,也可以替换为Java原生支持的正斜杠写法c:/Java/teste.txt,避免转义错误

快速排查代码优化

你可以给getReader方法增加路径校验逻辑,直接打印JVM实际尝试读取的路径,快速定位不一致问题:

public static BufferedReader getReader(String name) {
    BufferedReader in = null;
    try {
        File file = new File(name);
        // 打印实际解析的文件路径,直接核对和预期是否一致
        System.out.println("实际读取路径:" + file.getAbsolutePath());
        // 前置校验文件状态
        if (!file.exists()) {
            System.out.println("错误:文件不存在");
        } else if (!file.isFile()) {
            System.out.println("错误:路径指向的不是普通文件");
        } else if (!file.canRead()) {
            System.out.println("错误:当前用户无文件读取权限");
        }
        in = new BufferedReader(new FileReader(file));            
    }
    catch (FileNotFoundException e) {
        // 打印完整异常栈信息,获取更详细报错原因
        e.printStackTrace();
        System.out.println("Arquivo não encontrado");
        System.exit(0);
    }
    return in;
}

内容的提问来源于stack exchange,提问作者RRF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 21:54:03