废话不多说 关键代码如下所述.
paquete com.edu.xynu; import java.io.bufferedInputStream; import java.io.bufferedOutputStream; import java.io.file; import java.io.fileInputStream; import java.io.fileOutputStream; import java.io.ioException; public class IounitCopy {// 按字节 public static void copybyte (file srcfile, file destfile) lanza ioexception {fileInputStream Fis = new FileInputStream (srcfile); FileOutputStream fos = new FileOutputStream (DestFile); int i; while ((i = fis.read ())! =-1) {fos.write (i); } fis.close (); fos.close (); } // 按字节数组 public static void copybyByTearray (archivo srcfile, file destfile) lanza ioexception {fileInputStream Fis = new FileInputStream (srcfile); FileOutputStream fos = new FileOutputStream (DestFile); byte [] buf = nuevo byte [10*1024]; int i; while ((i = fis.read (buf, 0, buf.length))! =-1) {fos.write (buf, 0, i); } fis.close (); fos.close (); } // 字节缓冲流 public static void CopyByBuff (archivo srcfile, file destfile) lanza ioexception {bufferedInputStream bis = new BufferedInputStream (nuevo FileInputStream (SRCFile)); BufferedOutputStream Bos = new BufferedOutputStream (nuevo FileOutputStream (DestFile)); int i; while ((i = bis.read ())! =-1) {bos.write (i); } bos.flush (); bis.close (); bos.close (); } // 字节数组批量读取 缓冲输出流写入 public static void CopyByBuffArray (File srcfile, File DestFile) lanza IOException {fileInputStream bis = new FileInputStream (srcfile); BufferedOutputStream Bos = new BufferedOutputStream (nuevo FileOutputStream (DestFile)); byte [] buf = nuevo byte [10*1024]; int len; while ((len = bis.read (buf, 0, buf.length))! =-1) {bos.write (buf, 0, len); } bos.flush (); bis.close (); bos.close (); }} paquete com.edu.xynu; import java.io.file; import java.io.ioException; public class IounitsCopyTest {public static void main (string [] args) {// toDO Auto Generated Method Stub intenta {long start = system.currentTimemillis (); // iOunitCopy.CopyByByte (nuevo archivo ("c: //1.mp3"), nuevo archivo (// "c: //2.mp3")); // 90713ms // iounitcopy.copypybybytearray (nuevo archivo ("c: //1.mp3"), nuevo archivo (// "c: //3.mp3"); // 41Ms // IOUnitCopy.copyByBuff(new File("c://1.mp3"), new File( // "c://4.mp3"));//556ms // IOUnitCopy.copyByByteArray(new File("c://1.mp3"), new File( // "c://5.mp3"));//30ms long end=System.currentTimeMillis(); System.out.println (end-start); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); }}}测试文件是