FileOutputStream的相对路径设置问题

在Idea中使用FileOutputStream写入文件时遇到FileNotFoundException。问题出在相对路径的设置上。作者发现路径应从src目录开始,而非项目名。修正后的正确路径为srcmain eflectTest.txt,使得文件能正常追加写入。若只提供文件名,则默认路径为项目根目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出现的问题

Idea中使用FileOutputStream在将数据输出到文件中的时候

PrintStream ps=new PrintStream(new FileOutputStream("reflect\\src\\reflectTest.txt",true));//true:让数据在文件中向后追加

报错“找不到路径”

Exception in thread "main" java.io.FileNotFoundException: reflect\src\reflectTest.txt (系统找不到指定的路径。)

所以我认定错误肯定出现在相对路径的起始位置书写,就一级一级地尝试了尝试

问题解决

在数次尝试之后,我认识到相对路径的书写是从src开始的,所以上面代码中我直接从项目名书写当然是错误的,FileOutputStreamFileInputSteam的相对路径设置是一个道理。

当我使用src进行输出时,正常输出了

PrintStream ps=new PrintStream(new FileOutputStream("src\\main\\reflectTest.txt",true));//true:让数据在文件中向后追加

路径里也出现了文件
在这里插入图片描述

补充

如果直接是以 文件名.txt 形式直接设定路径的话,默认位置是项目文件夹下

 PrintStream ps=new PrintStream(new FileOutputStream("reflectTest.txt",true));//true:让数据在文件中向后追加

如图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值