VScode出现java.io.FileNotFoundException,找不到userData.json文件求助
问题排查与解决
核心问题
你的代码里仍在使用旧文件路径:group18/src/main/java/com/example/group18/userData.json,但当前userData.json已经移至项目根目录,路径不匹配直接导致文件找不到异常。
具体解决方案
1. 直接修正相对路径
项目运行时的工作目录通常就是Project_Root,直接用文件名作为路径即可:
JSONObject jsonObject = new JSONObject(new JSONTokener(new FileReader("userData.json")));
2. 更稳定的绝对路径写法(推荐)
为避免运行目录变动导致的路径问题,可以通过系统属性获取项目根目录,再拼接文件路径,同时适配不同操作系统的路径分隔符:
import java.io.File; // ... String projectRoot = System.getProperty("user.dir"); String filePath = projectRoot + File.separator + "userData.json"; JSONObject jsonObject = new JSONObject(new JSONTokener(new FileReader(filePath)));
3. 额外检查项
- 确认
Project_Root下确实存在userData.json,文件名无拼写、大小写错误(Linux/macOS系统对文件名大小写敏感)。 - 若在IDE中运行,检查IDE的「工作目录」设置,确保指向
Project_Root而非子目录。 - 你代码中需要修改
online字段并写回文件,后续写入时要使用和读取一致的路径,避免修改到错误的文件副本。
内容的提问来源于stack exchange,提问作者Lmabear
相关产品推荐
相关产品推荐

