释放资源 try-catch

 

注意这里只能资源对象。 (流对象)

什么是资源呢

资源都会实现AouCloseable接口

我们用的InputStream接口继承Closeable继承AutoCloseable

资源都会有一个close方法 。并且资源放到try()小括号里面
用完了 ,会被自动调用其close方法完成 资源的释放操作
package CopysIO;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

public class CopyTest2 {
    // 目标:使用字节流完成文件复制操作
    public static void main(String[] args) throws  Exception {
 
        try(   //需求: 复制图片
               //1:创建一个字节输出流(读取流)管道与原文件接通
               InputStream is=  new FileInputStream("src/mamat03.txt");
               //2:创建一个字节输入流(写入流)管道与源文件接通
               OutputStream ot= new FileOutputStream("src/mamat03Copy.txt");
               //注意这里只能资源对象。 (流对象)
               ){

            //3:创建字节数组 负责转移字节数据
            byte[] buffer =new byte[1024]; // 1KB;

            //4:从字节输入流中读取字节数据 写出去到字节输出流中 读取多少写入出去多少
            int len;
            while((len=is.read(buffer))!=-1){
                ot.write(buffer, 0, len);
        }
            System.out.println("复制完成");
        }catch (Exception e){
            e.printStackTrace();
        } 

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值