java.io.FileNotFoundException: E:\aa\music\野狼disco1.mp3 (系统找不到指定的路径。)

        今天玩io流,使用 FileInputStream 和 FileOutputStream 来读取和写入硬盘数据时,出现了 java.io.FileNotFoundException: E:\aa\music\野狼disco1.mp3 (系统找不到指定的路径。)  ,出现这种情况一般从以下几点排除:

        1. 路径书写格式有问题,File需要的是绝对路径,windows系统反斜杠需要两个,第一个是转义符;正斜杠一个就行。

        2. 文件不存在该路径下。 值得一提的是,如果只是使用File来操作,即使文件不存在也不会报错,但是如果使用流(InputStream和OutputStream等子类)来操作文件的数据,那么就会报java.io.FileNotFoundException: E:\aa\music (系统找不到指定的路径。)。另外,如果使用输出流写出数据时,如果文件的上级目录不存在,也会报 java.io.FileNotFoundException: E:\aa\music (系统找不到指定的路径。)

        3. 编码格式有问题,windows系统一般默认是Unicode格式,编程工具我们一般都会修改为utf-8

        4.权限问题

       

        根据我的经历而言,刚开始学习IO流,这种错误一般存在与第一点和第二点:

                  路径要全英文输入格式,很多时候冒号会被写成中文标点。路径要写成绝对路径,从盘符开始,如果是程序中的资源,就使用虚拟路径。

                  第二种常犯错误就是傻傻的分不清文件不存在时,什么时候是自动创建文件,什么时候是抛出异常。如果是创建文件或文件夹时,当文件不存在时,会自动创建。如果是使用流来操作文件数据,那么就会抛出异常。

多用多想,习惯就好了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值