黑马程序员技术交流社区

标题: 字定义字节缓冲类复制mp3中的疑问 [打印本页]

作者: 周刚    时间: 2012-7-3 22:50
标题: 字定义字节缓冲类复制mp3中的疑问
本帖最后由 周刚 于 2012-7-3 23:36 编辑

[attach]3792[/attach]     老师在19天14集,讲到自定义缓冲区复制mp3数据时,思想是这样的:定义一个字节缓冲数组byte[1024]--->然后每一次从硬盘里面读取1024个字节到缓冲区中--->每一次从缓冲区中读取一个字节,并写到输出流中...
     为什么这么麻烦啊?要一个一个字节从缓冲区中取出来。难道不能像字符输出流一样,直接将缓冲数组写入吗?如,字符流有如下方法:
    FileReader fr = new FileReader("a.txt");
    FileWriter  fw= new FileWriter("b.txt");
    char[] buff = new char[1024];
    while(num=fr.read(buff)){
        fw.write(buff,0,num);  
        fw.flush();
    }
...

难道字节流没有类似的方法bufos.write(buf),直接将缓冲数组写入到输出流?
字节缓冲流是什么破缓冲流啊?!!!!感觉效率一点都不高。还要一个字节一个字节的
从输入缓冲流里取出数据,然后一个字节一个字节写到输出缓冲流中,还要写什么指针,受不鸟了。看下图:

ss.jpg (5.72 KB, 下载次数: 48)

ss.jpg

se.jpg (34.39 KB, 下载次数: 28)

se.jpg

ab.jpg (38.26 KB, 下载次数: 23)

ab.jpg

dde.jpg (38.03 KB, 下载次数: 24)

dde.jpg

作者: 车风波    时间: 2012-7-3 23:13
自定义缓冲类就是让你仿照字节流的缓冲功能写一个类似的带有缓冲区的操作流。不是让你直接用java现有的缓冲流。
作者: 周刚    时间: 2012-7-3 23:45
车风波 发表于 2012-7-3 23:13
自定义缓冲类就是让你仿照字节流的缓冲功能写一个类似的带有缓冲区的操作流。不是让你直接用java现有的缓冲 ...

标准的的字节缓冲流也是这样的,一个一个字节的操作,好蛋痛!!
作者: 韦念欣    时间: 2012-7-4 02:07
其实是可以一次性写入很多数据的,楼主继续往下看毕老师的视频就明白了!
作者: 陆强强    时间: 2012-7-4 07:20
往下看后面还有打印流更nb




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2