java.io.FileNotFoundException异常

今天解析支付宝下载账单的时候遇到一个坑,我把账单文件下载到本地,然后从本地获取,发现老是报拒绝访问,一直以为是程序对本地磁盘没有访问权限,后来才发现提示是个神坑!!!

关于java.io.FileNotFoundException异常的坑

java.io.FileNotFoundException异常,一般会出现“拒绝访问”和“系统找不到指定路径”两种报错

关于java.io.FileNotFoundException异常

这个异常会抛出两种常见情况,“拒绝访问” 和 “系统找不到指定路径”

java.io.FileNotFoundException: D:\ (系统找不到指定的路径。)
	at java.io.FileInputStream.open0(Native Method)
	at java.io.FileInputStream.open(FileInputStream.java:195)
	at java.io.FileInputStream.<init>(FileInputStream.java:138)
	...

对文件进行输入输出流操作,也就是InputStream和OutputStream操作时,如果填写的路径不存在,那么会报系统找不到指定路径,

java.io.FileNotFoundException: D:\idea\java8-in-action\src\com\ys\java8\test (拒绝访问。)
	at java.io.FileInputStream.open0(Native Method)
	at java.io.FileInputStream.open(FileInputStream.java:195)
	at java.io.FileInputStream.<init>(FileInputStream.java:138)
	...

而如果指定的是目录(没有指定某个文件)时,就会报拒绝访问异常!!!

当然,前提如果你真的对本地磁盘没有访问权限,就需要先设置访问权限,右键磁盘->属性->选择安全,把完全控制勾上就行,如图:

java.io.FileNotFoundException异常_第1张图片

你可能感兴趣的:(Java技术杂谈)