[Java6]关于Stream的第一次体会

这段时间由于毕设、实习、培训、出差等一大堆的事情,分不开身,在此只能说是自己的无能了。

Stream,流,作用很实在专一,就是将规定数量的数据从A转到B。JDK6中,有2个大类:单字节流与双字节流(alias:字符流)。

       单字节流,故名思义,就是每次传1Byte。用byte[]来进行操作是比较方便的方式。

              典型父类:InputStream/OutputStream

              DataStream的每Byte每Byte地读写,从不转换成什么ASCII码之类,很有个性。

                        优点:对于有约定的数据,总数据量有明显地减少,很划得来。特别是数字,平时用ASCII码2个字节(1个字符)。现在只1个字节就可以了,是平时的50%.

                        缺点:转换起来有点小麻烦。没工具,看不明白里面的是会什么。

              其他的流也都差不多,各有各的特点,没什么好说的,直接看api就是了。

      双字节流(字符流),是指每次传1个字符,对unicode/UTF-8/UTF-16/UTF-32等的支持较好。

              典型父类:Reader/Writer

     无论是单字节还是双字节流,数据流动的时候,基本思路都是一样的。

             1.从哪里读取

             2.读入字节要哪些辅助功能(例如:缓存、解压、格式转换等)

             3.要作什么处理

             4.写到哪里

             5.怎么写到别处,需要哪些辅助功能

       例如:

            ...

            FileInputStream fin = new FileInputStream("./home/dataIn.in");              //-1

            BufferedInputStream bfin = new BufferedInputStream(fin);                      //-2

            //doSomething...(bfin.read(...);)                                                                  //-3

            FileOutputStream fout = new FileOutputStream("./home/data.out");         //-4

            BufferedOutputStream bfout = new BufferedOutputStream(fout);              //-5

           ...(bfout.write(...);)

          ========================

完事。

       


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值