I/O流,复制文件案例,代码注释。

package com.qf.day19;

import java.io.*;
//先输入流,再输出流
//要求:把F:\MAD.AMV\bilibili\心海.flv文件复制到C:\Users\Emilia\Desktop\AAA\BBB\CCC
//把一个文件复制到另个一地方,规定同时输入再输出
public class Demo02 {
    public static void main(String[] args) throws IOException {
        //把数据写入内存,
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream("F:\\MAD.AMV\\bilibili\\心海.flv"));
        //直接把地址变成流的形式在加buffered,把流加上缓冲。赋值费bis对象
        //把内存写入指定位置
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("C:\\Users\\Emilia\\Desktop\\AAA\\BBB\\CCC\\1.flv"));
        //被写入的目标必须是一个同样后缀的文件,本质上是绝对路径覆盖
        byte [] buf = new byte[4*1024];
        int length;//定义变量长度
        while ((length = bis.read(buf))!=-1){
            //把每次的数组元素个数的赋值给长度,再用长度去和-1对比,如果不等于-1就true,运行bos.write写入流到文件,并用偏移控制。
            //buf是指定的这个数组,0是偏移的位置,length是指数组的长度
            bos.write(buf,0,length);
        }
        bos.close();//先关闭bufferedOutputStream 对象 再关闭 bufferedInputStream的对象
        bis.close();
    }
}

先确定要复制文件的地址和目标地址,注意:目标地址需要是同后缀的文件。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值