码迷,mamicode.com
首页 > 编程语言 > 详细

第四周JAVA学习笔记(四)

时间:2016-04-08 19:34:37      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

使用BufferedInputStream和BufferedOutputStream来减少复制音频文件的时间,运行效果:
技术分享    技术分享

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import org.junit.Test;

public class CopyFile {
    @Test
    public void testCopyFile(){
        long start = System.currentTimeMillis();
        String src="C:\\Users\\think\\Desktop\\Java作业4\\a.mp3";
        String dest="C:\\Users\\think\\Desktop\\Java作业4\\b.mp3";
        CopyFile(src,dest);
        long end = System.currentTimeMillis();
        System.out.print("花费的时间:" + (end - start));    
    }
    
    private void CopyFile(String src, String dest) {
    //使用缓冲流实现复制
    BufferedInputStream bis = null;
    BufferedInputStream bos = null;
    try {
        //1.提供读入写入文件
        File file1 = new File(src);
        File file2 = new File(dest);
        //2.创建相应的节点流
        FileInputStream fis = new FileInputStream(file1);
        FileOutputStream fos =new FileOutputStream(file2);
        //3.将创建的节点流的对象传递给缓冲就的构造器中
        BufferedInputStream bis1 = new BufferedInputStream(fis);
        BufferedOutputStream bos1 = new BufferedOutputStream(fos);
        //4.具体的实现文件复制的操作
        byte[] b = new byte[1024]; //使用数组来实现传递,用1024个字节传递
        int len;
        while((len = bis1.read(b)) != -1){
            bos1.write(b,0,len);          
        }
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }finally{
        //5.关闭流
        if(bos != null){
           try {
            bos.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        }
        if(bis != null){
           try {
            bis.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        }
    }
  }
}

 


 

第四周JAVA学习笔记(四)

标签:

原文地址:http://www.cnblogs.com/521xyh/p/5364871.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!