package cn.zen.io.bytestream; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import org.junit.Test; public class BufferedSteam { /** * copy mp3 */ @Test public void method1() { BufferedInputStream bfis = null; BufferedOutputStream bfos = null; try { bfis = new BufferedInputStream(new FileInputStream("C:\\1.mp3")); bfos = new BufferedOutputStream(new FileOutputStream("C:\\copy1.mp3")); byte[] buf = new byte[1024]; int len = 0; while ((len = bfis.read(buf)) != -1) { bfos.write(buf, 0, len); } } catch (Exception e) { throw new RuntimeException("拷贝失败:" + e); } finally { try { if (bfis != null) { bfis.close(); } } catch (Exception e) { throw new RuntimeException("关闭字节缓冲读取流失败" + e.toString()); } try { if (bfos != null) { bfos.close(); } } catch (Exception e) { throw new RuntimeException("关闭字节缓冲写入流失败" + e.toString()); } } } }