在jdk1.7之前使用try_catch_finally处理流中的异常

格式:

try{
可能会出现异常的代码
}catch(异常类变量 变量名){
异常的处理逻辑
}finally{
一定会执行的代码
资源释放
}

代码实现:

package com.yang.Test.IOStudy.OutStudy;

import java.io.FileWriter;
import java.io.IOException; public class demo05 {
public static void main(String[] args) { FileWriter fw = null;
//可能会出现异常的代码
try {
fw = new FileWriter("Document\\1.txt", true);
for (int i = 0; i < 10; i++) {
fw.write("HelloWorld" + i + "\r\n");
}
//异常的处理逻辑
} catch (IOException e) {
System.out.println(e);
//一定会执行的代码
//资源释放
} finally {
try {
fw.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
} }
}

JDK7和JDK9流中的异常处理

package com.yang.Test.IOStudy.OutStudy;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException; /**
* JDK7的新特性
* 在try的后边可以增加一个(),在括号中可以定义流对象
* 那么这个流对象的作用域就在try中有效
* try中的代码执行完毕,会自动吧流释放,不用谢finally
* 格式:
* try(定义流对象;定义流对象.....){
* 可能会产出异常的代码
* }catch(异常类变量 变量名){
* 异常的处理逻辑
* }
*/
public class demo06 {
public static void main(String[] args) {
try (
FileInputStream fis = new FileInputStream("1.txt");
FileOutputStream fos = new FileOutputStream("b.txt");
) {
int len = 0;
while((len = fis.read())!=-1){
fos.write(len);
}
} catch (IOException e) {
System.out.println(e);
} }
}

最新文章

  1. Windows bat脚本学习(1)
  2. (C#)使用NPOI导出Excel
  3. Android 开发基础及环境配置
  4. (转)C语言16进制输出字符型变量问题
  5. 如何将CKeditor编辑器的上传和thinkphp结合
  6. openjudge2989糖果[DP 01背包可行性]
  7. php学习手记
  8. winrt控件
  9. DP:Ant Counting(POJ 3046)
  10. html 去掉input 获取焦点时的边框
  11. java项目编译有误
  12. A Bug
  13. 关于extjs中动态添加TabPanel的tab项并以iframe显示的整理
  14. python学习笔记之初识Python
  15. 问题.NET--win7 IIS唯一密钥属性“VALUE”设置为“DEFAULT.ASPX”时,无法添加类型为“add”的重复集合
  16. html5+css3中的background: -moz-linear-gradient 用法 (转载)
  17. ajax重复提交到相同url时出现的问题
  18. oracle 分析函数 keep(dense_rank first/last)
  19. MongoDB——学习
  20. WorldWind源码剖析系列:角度类Angle

热门文章

  1. 【mq】从零开始实现 mq-08-配置优化 fluent
  2. k8s client-go源码分析 informer源码分析(3)-Reflector源码分析
  3. mybatis xml 中 trim 多余的符号
  4. 【Java面试】Redis存在线程安全问题吗?为什么?
  5. Fail2ban 运维管理 服务控制
  6. ex_Lucas定理
  7. 背包,子集和以及 (max, +) 卷积在特殊情形下的求法
  8. USACO 刷题小记
  9. Pycharm连接远程服务器并保持文件夹同步
  10. mybatis 转义符号