trycatch处理流IO流中的异常

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
FileWriter fw = null;//提高变量fw的作用域try {fw = new FileWriter("E:\\Down");fw.write(12);}catch (IOException e){System.out.println(e);}finally{try {fw.close();} catch (IOException ex) {ex.printStackTrace();}}
运行结果:
java.io.FileNotFoundException: E:\Down (拒绝访问。)
Exception in thread "main" java.lang.NullPointerExceptionat text.main(text.java:15)

当File路径出问题时,fw为空,fw.close()出现空指针异常
优化:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
FileWriter fw = null;//提高变量fw的作用域try {fw = new FileWriter("E:\\Down");fw.write(12);}catch (IOException e){System.out.println(e);}finally{if(fw!=null)try {fw.close();} catch (IOException ex) {ex.printStackTrace();}}
输出结果:
java.io.FileNotFoundException: E:\Down (拒绝访问。)

JDK7的新特性

在try的后边可以增加一个(),在括号中可以定义流对象,这个流对象的作用域在try中有效
try中的代码执行完毕,会自动把流对象释放,不用写finally

1
2
3
4
5
6
try(FileWriter fw = new FileWriter("E:\\Down");) {fw.write(12);}catch (IOException e){System.out.println(e);}

JDK9的新特性

try前边可以定义流对象
try后边的()中可以引入流对象的名称
在try代码执行完后,流对象可以自动释放掉

1
2
3
4
5
6
7
FileWriter fw = new FileWriter("E:\\Down");try(fw) {fw.write(12);}catch (IOException e){System.out.println(e);}

谢谢你请我吃糖果

支付宝
微信

trycatch处理流IO流中的异常相关推荐

  1. Java_IO流-IO流

    文章目录 2 file类 2.1 新建文件夹或文件 2.2 copy1 2.3 copy2 2.4 可以覆盖掉旧文件的copy 4 字节流转字符流读取文件中内容 5 读取Properties文件中的内 ...

  2. 如何学IO流IO流的含义

    初学者觉得复杂是很正常的,归根结底是因为没有理解JavaIO框架的设计思想:可以沿着这条路想一想: 1,学IO流之前,我们写的程序,都是在内存里自己跟自己玩.比如,你声明个变量,创建个数组,创建个集合 ...

  3. Java字节缓冲流/字符流/IO流小结

    文章目录 字节缓冲流 字节缓冲流构造方法 字符流 为什么会出现字符流 编码表 字符串中的编码解码问题 字符流中的编码解码问题 字符流写数据的5种方式 字符流读数据的2种方式 字符缓冲流 字符缓冲流特有 ...

  4. 在try-catch机制优化IO流关闭时,OutputStreamWriter 数据流被截断 新语法

    try-catch常规的格式是try{--}catch(){--}finallly{--},如果优化成try(--){--}catch(){--}finallly{--},此时流就可以自动关闭,不需要 ...

  5. IO流 | IO流的应用举例

    1.将源文件路径下内容拷贝到目的路径文件中 /*** 源文件路径拷贝到目的路径文件中* @param srcFile 源文件* @param desFile 目的文件(目录/文件)*/ public ...

  6. java线程删除文件,线程“main”java.io.jgitinernalexception中的异常:无法删除临时文件c:\users\13 dec...

    我正在尝试使用jgit克隆git存储库. public static void main(String[] args) throws IOException, InvalidRemoteExcepti ...

  7. java中的IO流(超全)(超详解)结合实例轻松掌握

    java进阶之IO流 IO流的概念(大纲): 1.InputStream和OutputStream的继承关系图 2.Reader和Writer的继承关系图 3.文件专属流(加※为重点掌握) ※File ...

  8. Java 语言基础(异常机制和File类,IO流,多线程,网络编程,反射机制)

    原文:Java 语言基础(异常机制和File类,IO流,多线程,网络编程,反射机制) 异常机制和File类 异常机制 基本概念 异常就是"不正常"的含义,在 Java 语言中主要指 ...

  9. java中的常用的文件流_Java 基础(四)| IO 流之使用文件流的正确姿势

    image.png 一.什么是 IO 流? 想象一个场景:我们在电脑上编辑文件,可以保存到硬盘上,也可以拷贝到 U 盘中.那这个看似简单的过程,背后其实是数据的传输. 数据的传输,也就是数据的流动.既 ...

最新文章

  1. 三级下拉框连动的数据库版
  2. Spring系列之一 Spring MVC
  3. 使用Asp.net Core3Blazor 的全栈式网站开发体验
  4. python 网络运维框架scape_“python scape 教程“求PhotoScape X Pro for Mac软件
  5. 区别不同浏览器,CSS hack写法
  6. python设计---空域增强之图片去噪(中值滤波、均值滤波、高斯滤波、双边滤波)
  7. 为什么显卡更新换代极快,每年都会有更强的新系列,而声卡却永远停留在了“兼容DX9的集成声卡“?
  8. python-类继承多态
  9. android recyclerview item自适应高度_web前端入门到实战:css让一个盒子的高度自适应屏幕剩余的部分...
  10. hash冲突的解决方法
  11. 低版本向日葵本机识别码和验证码提取
  12. 家谱系统php,家谱信息管理系统
  13. PS亮度蒙版插件TKActions V5 Mac版
  14. 华为云OBS创建对象时以HTTP方式通知订阅终端
  15. 通过双网卡电脑将网络共享到路由器
  16. 一键U盘装系统 电脑内存使用率高的解决方法
  17. 微信支付“举刀”挥向谁?
  18. [OpenGL] 视图矩阵(View)矩阵与glm::lookAt函数源码解析
  19. WPS文字 JSA 学习笔记 - 转PDF后要带自定义目录
  20. js删除对象空属性值的方法

热门文章

  1. python 安装xlwt失败_安装python库xlwt的时候遇到超时的情况。
  2. wegame饥荒一直登录中_经历网游和单机发行的左右摇摆后,Wegame决定“我全都要”...
  3. java获得map内存_[java]测试static的map的内存
  4. Java操作Hive
  5. Linux性能测试分析命令_sar
  6. 观察者模式-对象行为型
  7. MSSQL常用操作及方法总结
  8. onload、DOMContentLoaded、$(document).ready(fn)、$(document).load(fn)
  9. 句句真研—每日长难句打卡Day16
  10. 句句真研—每日长难句打卡Day14