Thứ Sáu, 3 tháng 3, 2006

Một kiểu copy file với hy vọng cải thiện tốc độ

test với jdk 5 thấy tốc độ cũng tương đối. chắc jdk 6 nhanh hơn.

1 nhận xét:

  1. import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.nio.channels.FileChannel;


    public class CopyFile {


      public static void main(String[] args) {
        try {
          long start = System.currentTimeMillis();      
          File from = new File("file_a.ext");
          File to = new File("file_b.ext");
          FileChannel srcChannel = new FileInputStream(from).getChannel();
          FileChannel desChannel = new FileOutputStream(to).getChannel();
          srcChannel.transferTo(0, srcChannel.size(), desChannel);
          srcChannel.close();
          desChannel.close(); 
          long end = System.currentTimeMillis();
          long time = (end-start)/1000;
          System.out.println("copy mat "+time+" giay");
        }catch(Exception exp){
          exp.printStackTrace();
        }
      }

    }

    Trả lờiXóa

nhudinhthuan@gmail.com