java.io.FileNotFoundException:(拒接访问)
一、问题
在使用FileInputStream或FileOutputStream时会遇到如下问题1和问题2。
问题1:
java.io.FileNotFoundException: .\xxx\xxx.txt (系统找不到指定的路径。)at java.io.FileOutputStream.open(Native Method)at java.io.FileOutputStream.<init>(Unknown Source)at java.io.FileOutputStream.<init>(Unknown Source)at com.yaohong.test.InputStreamTest.fileInputStream(InputStreamTest.java:13)at com.yaohong.test.InputStreamTest.main(InputStreamTest.java:27)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
问题2:
java.io.FileNotFoundException: .\xx\xx (拒绝访问。)at java.io.FileOutputStream.open(Native Method)at java.io.FileOutputStream.<init>(Unknown Source)at java.io.FileOutputStream.<init>(Unknown Source)at com.yaohong.test.InputStreamTest.fileInputStream(InputStreamTest.java:13)at com.yaohong.test.InputStreamTest.main(InputStreamTest.java:27)
- 1
- 2
- 3
- 4
- 5
- 6
二、分析
在进行分析时,我得说清楚什么时候抛拒绝访问,什么时候抛找不到指定路径。原因是这样的,在构造一个File对象时,指定的文件路径是什么都可以,就算不存在也能够构造File对象,但是,现在你要对文件进行输入输出操作,也就是InputStream和OutputStream操作时,如果填写的路径不存在,那么就会报系统找不到指定路径,如果指定的是目录时,就会报拒绝访问异常。看了这个前提之后,在继续往下读。
当遇到问题1时,的确是当前所指定的文件不存在或者目录不存在。
当遇到第二个问题时,是因为你访问的是一个文件目录,如果这个目录没有权限访问或者是目录不存在,就会抛出问题2的异常。
三、解决办法
第一个的解决办法是,先判断一下当前文件是否存在,如果存在则略过,如果不存在,在创建,具体做法如下:
//在填写文件路径时,一定要写上具体的文件名称(xx.txt),否则会出现拒绝访问。
File file = new File("./mywork/work.txt");
if(!file.exists()){//先得到文件的上级目录,并创建上级目录,在创建文件file.getParentFile().mkdir();try {//创建文件file.createNewFile();} catch (IOException e) {e.printStackTrace();}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
第二个的解决办法是,在填写文件的路径时一定要具体到文件,如下:
File file = new File("./mywork/work.txt");
- 1
而不能写成:
File file = new File("./mywork/");
- 1
因为这样你访问的是一个目录,因此就拒绝访问。
四、源码(我的demo)
1、文件输出流
/*** 文件输出流方法*/
public void fileOutputStream() {File file = new File("./mywork/work.txt");FileOutputStream out = null;try {if (!file.exists()) {// 先得到文件的上级目录,并创建上级目录,在创建文件file.getParentFile().mkdir();file.createNewFile();}
<span class="hljs-comment">//创建文件输出流</span>out = <span class="hljs-keyword">new</span> FileOutputStream(file);<span class="hljs-comment">//将字符串转化为字节</span><span class="hljs-keyword">byte</span>[] byteArr = <span class="hljs-string">"FileInputStream Test"</span>.getBytes();out.write(byteArr);out.close();
} <span class="hljs-keyword">catch</span> (FileNotFoundException e) {e.printStackTrace();
} <span class="hljs-keyword">catch</span> (IOException e) {e.printStackTrace();
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
2、文件输入流方法
/*** 文件输入流*/
public void fileInputStream() {File file = new File("./mywork/work.txt");FileInputStream in = null;//如果文件不存在,我们就抛出异常或者不在继续执行//在实际应用中,尽量少用异常,会增加系统的负担if (!file.exists()){throw new FileNotFoundException();}try {in = new FileInputStream(file);byte bytArr[] = new byte[1024];int len = in.read(bytArr);System.out.println("Message: " + new String(bytArr, 0, len));in.close();} catch (IOException e) {e.printStackTrace();}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
如有错误,还望指正,谢谢合作。
一、问题
在使用FileInputStream或FileOutputStream时会遇到如下问题1和问题2。
问题1:
java.io.FileNotFoundException: .\xxx\xxx.txt (系统找不到指定的路径。)at java.io.FileOutputStream.open(Native Method)at java.io.FileOutputStream.<init>(Unknown Source)at java.io.FileOutputStream.<init>(Unknown Source)at com.yaohong.test.InputStreamTest.fileInputStream(InputStreamTest.java:13)at com.yaohong.test.InputStreamTest.main(InputStreamTest.java:27)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
问题2:
java.io.FileNotFoundException: .\xx\xx (拒绝访问。)at java.io.FileOutputStream.open(Native Method)at java.io.FileOutputStream.<init>(Unknown Source)at java.io.FileOutputStream.<init>(Unknown Source)at com.yaohong.test.InputStreamTest.fileInputStream(InputStreamTest.java:13)at com.yaohong.test.InputStreamTest.main(InputStreamTest.java:27)
- 1
- 2
- 3
- 4
- 5
- 6
二、分析
在进行分析时,我得说清楚什么时候抛拒绝访问,什么时候抛找不到指定路径。原因是这样的,在构造一个File对象时,指定的文件路径是什么都可以,就算不存在也能够构造File对象,但是,现在你要对文件进行输入输出操作,也就是InputStream和OutputStream操作时,如果填写的路径不存在,那么就会报系统找不到指定路径,如果指定的是目录时,就会报拒绝访问异常。看了这个前提之后,在继续往下读。
当遇到问题1时,的确是当前所指定的文件不存在或者目录不存在。
当遇到第二个问题时,是因为你访问的是一个文件目录,如果这个目录没有权限访问或者是目录不存在,就会抛出问题2的异常。
三、解决办法
第一个的解决办法是,先判断一下当前文件是否存在,如果存在则略过,如果不存在,在创建,具体做法如下:
//在填写文件路径时,一定要写上具体的文件名称(xx.txt),否则会出现拒绝访问。
File file = new File("./mywork/work.txt");
if(!file.exists()){//先得到文件的上级目录,并创建上级目录,在创建文件file.getParentFile().mkdir();try {//创建文件file.createNewFile();} catch (IOException e) {e.printStackTrace();}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
第二个的解决办法是,在填写文件的路径时一定要具体到文件,如下:
File file = new File("./mywork/work.txt");
- 1
而不能写成:
File file = new File("./mywork/");
- 1
因为这样你访问的是一个目录,因此就拒绝访问。
四、源码(我的demo)
1、文件输出流
/*** 文件输出流方法*/
public void fileOutputStream() {File file = new File("./mywork/work.txt");FileOutputStream out = null;try {if (!file.exists()) {// 先得到文件的上级目录,并创建上级目录,在创建文件file.getParentFile().mkdir();file.createNewFile();}
<span class="hljs-comment">//创建文件输出流</span>out = <span class="hljs-keyword">new</span> FileOutputStream(file);<span class="hljs-comment">//将字符串转化为字节</span><span class="hljs-keyword">byte</span>[] byteArr = <span class="hljs-string">"FileInputStream Test"</span>.getBytes();out.write(byteArr);out.close();
} <span class="hljs-keyword">catch</span> (FileNotFoundException e) {e.printStackTrace();
} <span class="hljs-keyword">catch</span> (IOException e) {e.printStackTrace();
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
2、文件输入流方法
/*** 文件输入流*/
public void fileInputStream() {File file = new File("./mywork/work.txt");FileInputStream in = null;//如果文件不存在,我们就抛出异常或者不在继续执行//在实际应用中,尽量少用异常,会增加系统的负担if (!file.exists()){throw new FileNotFoundException();}try {in = new FileInputStream(file);byte bytArr[] = new byte[1024];int len = in.read(bytArr);System.out.println("Message: " + new String(bytArr, 0, len));in.close();} catch (IOException e) {e.printStackTrace();}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
如有错误,还望指正,谢谢合作。
java.io.FileNotFoundException:(拒接访问)相关推荐
- 文件之间的拷贝(拷贝图片实例)java.io.FileNotFoundException: G:\dad (拒绝访问。)通过绝对路径获取各种文件名
1.报错解决 :java.io.FileNotFoundException: G:\dad (拒绝访问.) 参考文献:(364条消息) java.io.FileNotFoundException:(拒 ...
- ie显示服务器拒接链接,IE浏览器拒接访问是怎么回事 IE浏览器显示拒接访问的有效解决方法...
IE浏览器是我们安装完系统后自带的浏览器,很多老用户都用习惯了,当你用IE浏览器的时候长了之后,你会遇到很多你没遇到过的问题,在昨天有网友就向小编请教了关于IE浏览器的事,IE浏览器显示拒接访问,之前 ...
- java.io.file jar_IDEA Maven 打包运行 jar java.io.FileNotFoundException: 问题?
java.io.FileNotFoundException: D:\workspaceIdea\ywjc-refactor\target\lib\javax.annotation-api-1.3.2. ...
- 手机安装失败java. io_Android java.io.FileNotFoundException:*** (Permission denied)
自从离开上海来到杭州之后,陆续接触了Android,Python,C++,OpenCV,最为一个新人来说,一路上遇到了很多坑,幸运的是 这互联网的强大(大傻子我还是蛮喜欢的哈),一路填填补补总算走了下 ...
- java打开文件出错_打开文件错误太多,java.io.FileNotFoundException
在我的程序中,我有循环扫描一堆文件并读取其内容.问题发生在大约1500个文件的迭代中,似乎无法再现(或理解(由我)) 问题: java.io.FileNotFoundException: /path/ ...
- ApkTool反编译出错brut.common.brutexception及java.io.filenotfoundexception 之一
反编译apk经常会遇到各种错误,smali文件出错还好,在错误信息里能看出大概哪里有了问题.但是xml文件里要是出错了就有点费劲了,很多时候抛出的错误信息是无法知道具体原因的.... 很多时候会抛出b ...
- springboot中getOutputStream() has already been called for this response和java.io.FileNotFoundException
这个异常挺多人遇到的,不过我看了一下,跟我们的情况都不一样. 1. 流没关闭. 2. 未设置响应头. 3. jsp页面需要清空流. 说一下我们遇到的情况.就是一个简单的sprinbo ...
- Exception in thread “main“ java.io.FileNotFoundException: C:\Temp (拒绝访问。)
Exception in thread "main" java.io.FileNotFoundException: C:\Temp (拒绝访问.) at java.io.F ...
- transferto遇到的问题java.io.FileNotFoundException: C:\Users\Administrator\AppData\Local\Temp
将MultipartFile转为File,使用注解掉的方法时错误:java.io.FileNotFoundException: C:\Users\Administrator\AppData\Local ...
最新文章
- 根据Apriltag进行角度和距离检测
- 第十一届蓝桥杯A组省赛填空试题 C: 蛇形填数(Java)
- handler类型的定时器
- Java面向对象编程篇2——面向对象三大特点
- vnc远程桌面_手机vnc远程桌面,手机vnc远程桌面,使用配置详解
- 1.6 万亿参数你怕了吗?谷歌大脑语言模型速度是 T5 速度的 7 倍
- ​苹果WWDC20确定6月22日线上举办;任天堂遭史上最大规模黑客攻击 ;Inkscape 1.0 发布 | 极客头条...
- Error: ER_ACCESS_DENIED_ERROR: Access denied for user ‘root‘@‘localhost‘ (using password: YES)解决办法
- 偶数支足球队进行单循环比赛,按照指定算法打印每轮的对阵形势
- QT实现经纬度转换为图片像素坐标
- 公众号获取access_token失败
- 提示:“网络连接”文件夹不能检索在您机器上的网络适配器.请确认“网络连接”服务起用并运行....
- SDN概述:简介、工具、环境部署
- 实战 Java 第12天:开发商品点赞接口
- 构建安全新模式,零信任如何破局 ?
- 利用燕尾花数据集画出P-R曲线
- 利用Instrumentation单元测试模块控制安卓手机进行各项操作(微信)
- 顺丰--Java丰桥接口整体封装(下单、查询、打印)
- 【毕业设计】基于单片机的家庭智能监控系统 - 物联网 stm32 嵌入式
- 养牛和养羊相比,用同样的资金,哪个效益会更高一些?
热门文章
- Linux(一)操作系统基础知识
- Windows Phone理解和运用ItemTemplate、ContentTemplate和DataTemplate
- 安卓桌面壁纸_最强安卓系统?MIUI12深度评测。
- 深度聚焦,持续发力,天空卫士上榜《2021中国网络安全产业势能榜》“专精型”厂商 TOP 20
- SqlServer数据库DROP TABLE IF EXISTS语句
- 消息队列rabbitmq(二)windows系统erl和rabbitmq的安装
- QT程序发布使用的软件集合
- 通过例子学TLA+(五)--FIFO Sequences
- flex vue 垂直居中居上_图片水平垂直居中对齐的四种做法
- 16s rDNA数据分析经验总结