javaAPI 高级特性 IO流 使用输入输出流写出复制粘贴视频

首先创建字节输入流和字节输出流对象

 //1:创建字节输入流对象,用于读取文件
   FIS = new FileInputStream("D:\\file\\双枪白峻阳.MP4");
 //2:创建字节输入流对象,用于存储文件,注意第二个参数,是否追加
   FOS = new FileOutputStream("E:\\myWorld\\俊宠的双枪.MP4");

将输入输出流对象作用域覆盖到全局

  //作用域覆盖到全局
        FileInputStream  FIS = null;
        FileOutputStream FOS = null;

定义byte类型数组用于等下的read(byte[] aByte方法读取)

byte[] aByte = new byte[1024];
定义临时变量data用于存储读取的字节数组aByte长度;
int data ;
使用while循环从输入流读取一些字节数,并将他们存储到缓冲区data中,并且判断该字节是否读取完毕

  在while循环中通过write(byte[] b,int off,int len)方法

从指定的字节数组写入len个字符,从偏移off开始输出到此输出流
while ((data = FIS.read(aByte))!=-1){
    
                FOS.write(aByte,0,data);
            }

提示复制文件成功 并抛出异常

System.out.println("成功");

关闭输入输出流对象

 try {
                if (FOS != null) {
                    FOS.close();
                }
                if (FIS != null) {
                    FIS.close();
                }
            } 

以下是所有代码

//作用域覆盖到全局
        FileInputStream  FIS = null;
        FileOutputStream FOS = null;
        try {
            //1:创建字节输入流对象,用于读取文件
            FIS = new FileInputStream("D:\\file\\双枪白峻阳.MP4");
            //2:创建字节输入流对象,用于存储文件,注意第二个参数,是否追加
            FOS = new FileOutputStream("E:\\myWorld\\俊宠的双枪.MP4");
            //3:定义byte类型数组用于等下的read(byte[] aByte)方法读取
            byte[] aByte = new byte[1024];
            //4:定义临时变量data用于存储读取的字节数组aByte长度;
            int data ;
            //5:使用while循环从输入流读取一些字节数,并将他们存储到缓冲区data中
            while ((data = FIS.read(aByte))!=-1){
                //6:通过write(byte[] b,int off,int len)方法
                //从指定的字节数组写入len个字符,从偏移off开始输出到此输出流
                FOS.write(aByte,0,data);
            }
            //7:提示复制文件成功
            System.out.println("成功");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            //8:关闭输入输出流对象
            try {
                if (FOS != null) {
                    FOS.close();
                }
                if (FIS != null) {
                    FIS.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

创建输入输出流对象时需抛出异常

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值