Java流关闭

博客指出在Java编程里,流的关闭操作需要放在finally块中,并且在关闭之前要先判断流是否为空,以确保程序的稳定性和资源的正确释放。
Java的流的关闭要放在finally中,关之前要判断一下是否为空。
Java中,分为输入和输出,在操作完成后,通常输入和输出都需要关闭。输入用于将数据从外设或外存传递到应用程序,输出则用于将数据从应用程序传递到外设或外存[^2]。 关闭的顺序一般遵循“开后关”原则。如果打开输入,再打开输出,通过读取输入并写入输出,理论上应该关闭输出,再关闭输入。不过,通常关闭输入输出的操作在读写完成后的`finally`块中执行,所以即便关闭输入,再关闭输出也不会有问题,因为读写操作已经结束[^1]。 以下是关闭输入和输出的示例代码: ```java package com.imooc.stream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileNotFoundException; import java.io.IOException; public class StreamCloseDemo { public static void main(String[] args) { FileInputStream fis = null; FileOutputStream fos = null; try { // 创建一个FileInputStream对象(文件输入) fis = new FileInputStream("set\\test.txt"); // 创建一个FileOutputStream对象(文件输出) fos = new FileOutputStream("set\\output.txt"); int i = fis.read(); while (i != -1) { // 没有到达文件内容末尾 fos.write(i); i = fis.read();// 再接着读取 } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { if (fos != null) { fos.close();// 关闭输出 } if (fis != null) { fis.close();// 关闭输入 } } catch (IOException e) { e.printStackTrace(); } } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值