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

© 宋超2356 中级黑马   /  2014-4-1 18:29  /  1030 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 宋超2356 于 2014-4-2 19:37 编辑

  1. import java.io.*;

  2. public class Test  {
  3.         public static void main(String[] args) throws IOException {
  4.                 FileInputStream fis = new FileInputStream("d:/java/Person.java");
  5.                 BufferedInputStream bis = new BufferedInputStream(fis);
  6.                 BufferedOutputStream bos = new BufferedOutputStream(
  7.                                 new FileOutputStream("d:/java/Person1.java"));
  8.                
  9.                 int num;
  10.                 byte [] buf = new byte[1024];
  11.                
  12.                 /*while((num = bis.read(buf)) != -1) {
  13.                         System.out.println(new String(buf,0,num));
  14.                         bos.write(buf,0,num);
  15.                 }
  16.                 */
  17.                 while((num = fis.read(buf)) != -1) {
  18.                         System.out.println(new String(buf,0,num));
  19.                 }

  20.                 bis.close();bos.close();//这里还有必要关闭fis么?
  21.         }

  22. }
复制代码
注释掉的事buffered...的缓冲流复制文件,与普通的file...流有什么区别?感觉效果一样啊,嵌套buffered...的意义在哪?

评分

参与人数 1技术分 +1 收起 理由
枫儿 + 1 赞一个!

查看全部评分

3 个回复

倒序浏览
关闭buffer的流  其实还是调用的 fis的close
buffer就是个缓冲区
有了此缓冲区就可以不写byte[] 数组了  你试试吧
回复 使用道具 举报
如果不用缓冲流的话,程序是读一个数据,写一个数据。这样在数据量大的程序中非常影响效率。
缓冲流作用是把数据先写入缓冲区,等缓冲区满了,再把数据写到文件里。这样效率就大大提高了
回复 使用道具 举报
  1. BufferedInputStream bufis = new BufferedInputStream(new FileInputStream("1.mp3"));
  2.                 BufferedOutputStream bufos = new BufferedOutputStream(new FileOutputStream("2.mp3"));

  3.                 int by =0;
  4.                 while ((by=bufis.read())!=-1)
  5.                 {
  6.                         bufos.write(by);
  7.                 }

  8.                 bufos.close();
  9.                 bufis.close();
复制代码

可以用read方法就不需要定义byte[] buf了。BufferedInputStream中有缓存,应该能提高效率

评分

参与人数 1技术分 +1 收起 理由
枫儿 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马