发布网友 发布时间:2023-08-15 20:30
共1个回答
热心网友 时间:2024-11-04 02:31
java.io.FileNotFoundException :当试图打开指定路径名表示的文件失败时,抛出此异常。不同的产生原因有不同的解决方案, 所以需要先分析异常产生的原因:
异常产生的原因:
1、该文件不存在. 那么IO操作就会抛出该异常
2、如果该文件存在,但是由于某些原因不可访问,比如试图打开一个只读文件进行写入,则此时这些构造方法仍然会抛出该异常。
3、WIN10系统,直接向系统盘C盘的根目录,直接写入文件,那么也会抛出该异常.
处理异常的方案:
1、文件不存在时, 检查路径名填写错误,然后进行修改,或者创建出来.
2、文件存在时, 我们需要检查该文件是否正在被修改占用, 或者该文件的属性是否是只读. 如果正在被修改占用,我们需要关闭其他占用该文档的应用.如果文件属性是只读,那么我们需要取消文档的只读属性
3、在WIN10系统,不要向系统盘C盘,直接创建文件, 需要先创建目录.然后写入文件
参考示范:
import java.io.File;拓展: 实际情况中,很多时候,文件夹存在,我们的重点是判断文件是否存在,且不存在,就创建. 有些输出流,就可以在文件不存在时,自动创建该文件. 比如FileOutputStream ,FileWriter ...
FileWriter fw = new FileWriter("d:\\菜单.txt");//注意 win10,不支持向c盘根目录写入文件总结: Java的异常处理机制是比较完善的, 除开通过推理逻辑, 避开一些异常, 更重要的是在运行中发生可以处理的异常时, 巧妙使用try catch 代码处理 .这样的程序才会更加的稳健