实例代码
package com.wang.mybytestream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class ByteStreamDemo08 {
public static void main(String[] args) throws IOException {
/**
* 文件拷贝改写 一次拷贝多个字节
*/
//记录程序运行的开始时间 单位 毫秒
long start = System.currentTimeMillis();
//1.创建对象
FileInputStream fis = new FileInputStream("D:\\itheima\\movie.mp4");//从该目录拷贝movie.mp4文件
FileOutputStream fos = new FileOutputStream("my io\\copy.mp4");//将文件复制到该目录下
//2.拷贝 一次拷贝多个字节
int len; //存储当前读取到的字节个数
byte[] buf = new byte[1024*1024*5]; //1024的整数倍,1024*1024*5表示5兆大小的数组
while ((len= fis.read(buf))!=-1){
fos.write(buf,0,len); //0,len表示上面读多少,我就写多少。因为有可能数组装不满,剩下很多空间。
}
//3.释放资源 输入输出都要关闭 先开的流最后关闭
fos.close();
fis.close();
//记录程序运行的结束时间
long end = System.currentTimeMillis();
//计算运行时间
System.out.println(end-start);
}
}