字节流复制视频的四种方式

Posted 水果、、

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字节流复制视频的四种方式相关的知识,希望对你有一定的参考价值。

 

package com.io.liushuaishuai;
/*
四种方式复制视频  记录时间
1 基本字节流一次一个字节
2基本字节流一次一个字节数组
3字节缓冲流1 基本字节流一次一个字节
4字节缓冲流一次一个字节数组
 */

import java.io.*;

public class CopyMp4Demo {
    public static void main(String[] args) throws IOException {
        //记录开始时间
        long start = System.currentTimeMillis();


        //复制视频
        //method1();//共耗时30374ms
        //method2();//共耗时135ms
        //method3();//共耗时177ms
        //method4();//共耗时42ms


        //记录结束时间
        long end = System.currentTimeMillis();

        System.out.println("共耗时" + (end - start) + "ms");
    }

    public static void method1() throws IOException {
        FileInputStream fis = new FileInputStream("C:\\\\壁纸\\\\因为爱情.mp4");
        FileOutputStream fos = new FileOutputStream("myiostream\\\\qiaorenliang.mp4");

        int by;
        while ((by = fis.read()) != -1) {
            fos.write(by);
        }
        fos.close();
        fis.close();
    }

    public static void method2() throws IOException {
        FileInputStream fis = new FileInputStream("C:\\\\壁纸\\\\因为爱情.mp4");
        FileOutputStream fos = new FileOutputStream("myIOstream\\\\qiaorenliang.mp4");

        byte[] bys = new byte[1024];
        int len;
        while ((len = fis.read(bys)) != -1) {
            fos.write(bys, 0, len);
        }
        fos.close();
        fis.close();
    }

    public static void method3() throws IOException {
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream("C:\\\\壁纸\\\\因为爱情.mp4"));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("myIOstream\\\\method3.mp4"));

        int i;
        while ((i = bis.read()) != -1) {
            bos.write(i);
        }


        bos.close();
        bis.close();
    }

    public static void method4() throws IOException {
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream("C:\\\\壁纸\\\\因为爱情.mp4"));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("myIOstream\\\\qiaorenliang.mp4"));

        byte[] bys = new byte[1024];
        int len;
        while ((len = bis.read(bys)) != -1) {
            bos.write(bys, 0, len);
        }
        bos.close();
        bis.close();
    }
}

 

以上是关于字节流复制视频的四种方式的主要内容,如果未能解决你的问题,请参考以下文章

IO流:字节流复制视频

IO拷贝代码

使用IO流复制文件

字节流的4种复制方式

Javascript 中使用Json的四种途径

文件的复制方式