A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© HKing 中级黑马   /  2014-8-23 19:57  /  1102 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 HKing 于 2014-8-23 19:58 编辑

写一个MP3的复制程序,就当时复习IO流操作吧:D
  1. /*
  2. MP3复制
  3. */
  4. import java.io.*;

  5. public class Test {
  6.     public static void main(String[] args) {
  7.                
  8.                 //创建目的地
  9. //                FileOutputStream fos = null;
  10.                 BufferedOutputStream bos = null;
  11.                 //与已有文件关联
  12. //                FileInputStream fis = null;
  13.                 BufferedInputStream bis = null;
  14.                 //缓冲区
  15.                 byte[] bytes = null;
  16.                 int len = 0;
  17.                 try
  18.                 {
  19. //                        fos = new FileOutputStream("2.mp3");
  20. //                        fis = new FileInputStream("错错错.mp3");
  21.                         bis = new BufferedInputStream(new FileInputStream("错错错.mp3"));
  22.                         bos = new BufferedOutputStream(new FileOutputStream("2.mp3"));

  23.                         bytes = new byte[1024];

  24.                         while ((len=bis.read(bytes)) != -1)
  25.                         {
  26.                                 bos.write(bytes, 0, len);
  27.                                 bos.flush();
  28.                         }

  29.                 }
  30.                 catch (IOException e)
  31.                 {
  32.                         throw new RuntimeException("复制文件操作失败!");
  33.                 }
  34.                 finally
  35.                 {
  36.                         if (bos != null)
  37.                         {
  38.                                 try
  39.                                 {
  40.                                         bos.close();
  41.                                 }
  42.                                 catch (IOException e)
  43.                                 {
  44.                                         throw new RuntimeException("关闭资源失败!");
  45.                                 }
  46.                         }
  47.                         if (bis != null)
  48.                         {
  49.                                 try
  50.                                 {
  51.                                         bis.close();
  52.                                 }
  53.                                 catch (IOException e)
  54.                                 {
  55.                                         throw new RuntimeException("关闭资源失败!");
  56.                                 }
  57.                                 
  58.                         }
  59.                 }

  60.     }
  61. }
复制代码

注释的地方为不使用缓冲的代码,两种方法可以对比下!

1 个回复

倒序浏览
您需要登录后才可以回帖 登录 | 加入黑马