You need to enable JavaScript to run this app. SimpleReader1L读取lines.txt触发文件不存在断言错误如何解决
优惠活动
大模型
产品
解决方案
定价
更多

SimpleReader1L读取lines.txt触发文件不存在断言错误如何解决

问题根因

你遇到的报错本质是SimpleReader1L构造方法读取本地文件时,没有在你输入的路径下找到对应文件。从源码逻辑可以看到,传入的文件名会先尝试按URL解析,解析失败就会按本地文件路径读取,你只输入lines.txt时,程序默认从Java进程的当前工作目录查找文件,而你把文件存放在Data文件夹下,自然匹配不到。

可行解决方案
  • 方案1:直接输入文件绝对路径
    Windows系统输入格式示例:D:\\你的项目路径\\Data\\lines.txt
    macOS/Linux系统输入格式示例:/Users/你的用户名/项目路径/Data/lines.txt
    绝对路径可以唯一锁定文件位置,不受工作目录影响。

  • 方案2:输入相对于当前工作目录的路径
    你可以先在业务代码的String inputFileName = in.nextLine();之前加入一行代码确认当前工作目录:

    System.out.println("当前工作目录:" + System.getProperty("user.dir"));
    

    运行程序后输出的路径就是程序默认查找文件的目录,假设Data文件夹就在该目录下,你直接输入Data/lines.txt即可正常读取文件。

  • 方案3:调整文件存放位置
    直接把lines.txt从Data文件夹移动到上面打印出来的当前工作目录下,之后程序运行时直接输入lines.txt就能正常识别。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 14:00:02