废话不多说 , 关键代码如下所述:
pacote com.edu.xynu; importar java.io.bufferInputStream; importar java.io.bufferedOutputStream; importar java.io.file; importar java.io.fileInputStream; importar java.io.fileOutputStream; importar java.io.ioException; public class iounitCopy {// 按字节 public static void copybybyte (arquivo srcfile, arquivo de destfile) lança 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 (arquivo srcfile, arquivo de destfile) lança ioexception {fileInputStream fis = new FileInputStream (srcfile); FileOutputStream fos = new FileOutputStream (Destfile); byte [] buf = novo 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 copybuff (arquivo srcfile, arquivo destfile) lança ioexception {bufferingInputStream bis = new bufferInputStream (new FileInputStream (srcfile)); BufferOutputStream bos = new BufferoudOutputStream (new FileOutputStream (destfile)); int i; while ((i = bis.read ())! =-1) {bos.write (i); } bos.flush (); bis.close (); bos.close (); } // 字节数组批量读取 缓冲输出流写入 public static void copyByBuffArray (arquivo srcfile, arquivo destfile) lança ioexception {fileInputStream bis = new FileInputStream (srcfile); BufferOutputStream bos = new BufferoudOutputStream (new FileOutputStream (destfile)); byte [] buf = novo 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 (); }} pacote com.edu.xynu; importar java.io.file; importar java.io.ioException; public class iounitScopyTest {public static void main (string [] args) {// TODO Method Auto-Gerated Stub Try {Long start = System.currenttimemillis (); // IOUnitCopy.copyByByte(new File("c://1.mp3"), new File( // "c://2.mp3"));//90713ms // IOUnitCopy.copyByByteArray(new File("c://1.mp3"), new File( // "c://3.mp3"));//41ms // Iounitcopy.copybyBuff (novo arquivo ("c: //1.mp3"), novo arquivo (// "c: //4.mp3")); // 556ms // iounitcopy.copybyByTeArray (new File ("c: //1.mp3), novo arquivo (//" c: //5.mp3 "); System.out.println (start final); } catch (ioexception e) {// TODO GATO GENERADO AUTOMENTADO BLOCO E.PRINTSTACKTRACE (); }}}测试文件是