使用字节 传输的缓冲流 进行复制文件



import java.io.*;
/*
 * 字节传输的缓冲流
 *
 * 用字节传输的缓冲流进行文件的复制
 *
 * 实现复制文件
 *
 * */


  public class BuffF {


        public static void main(String[] args) {

//        定义路径为空


              FileInputStream fis=null;


              FileOutputStream fos=null;


              BufferedOutputStream  bos=null;


              BufferedInputStream bis=null;
        
//                捕获异常


          try {


//                  读取D盘的文件


                   fis=new FileInputStream("D:\aaa\11.avi");


//                   写入其他盘符的文件


                  fos=new FileOutputStream("D:\IO\11.avi");


//                  使用字节缓冲流写文件


                  bos= new BufferedOutputStream(fos);


//                  使用字节缓冲流读文件        

  
                   bis=new BufferedInputStream(fis);


//                   打印开始时间


                  long timeM = System.currentTimeMillis();


//                  以一兆的速度传输


                byte [] b=new byte[1024*10];


//                  定义长度为0


                  int len=0;


//                判断len 不能等于-1


                while((len=bis.read(b))!=-1){


//                    复制的长度


                    bos.write(b,0,len);
            }


//            结束时间


                long end = System.currentTimeMillis();


//                  打印结束时间减去开始时间得到用的时间


                System.out.println(end-timeM);
            
          }     catch (Exception e) {
            
                   e.printStackTrace();
            
        }   finally{


//                  异常处理


              try {


//                    bos不等于空


                    if(bos!=null){


//                      关闭IO流


                      bos.close();


                }


            } catch (IOException e) {


      
                  e.printStackTrace();


            }finally{


                try {


                    if(bis!=null){


                        bis.close();


                    }
                    
                    
                } catch (IOException e) {


               
                    e.printStackTrace();


                }
            }
        }
    }      
}

原文地址:https://www.cnblogs.com/hph1728390/p/10600973.html