转行小白成长路-java篇

第18章:javaI/O系统

  FileterInputStream和FIleterOutputStream用来提供装饰器类接口以控制特定的流的两个类。先解释一下装饰的意思,一个葫芦里卖多种药,这个两个I/O流就是葫芦相当于容器,实现I/O等具体功能的流就是药丸。直白说就是将别的流包装一下,具有某种新特性。书中罗列一点,从属于FilterInput Stream和filterOutputStream但是肯定是不全。

  DataInputStream:InputStream包含用于基本类型的全部接口

  BufferedInputStream:InputStream,可以指定缓冲区大小,本质上不提供接口,与接口对象搭配使用,就是直接操作BufferInputStream生成的对象。

  LineNumberInputStream:真长,InputStream,增加了行号,操作方式同上

  PushhackInputStream:通常作为编译器的扫描器,做所以包含在内是因为java编译器的需要。我们就用不到了,因为编译器要做挺多事情的。

 

  Reader和Writer:主要是用来发展国际化,就是为了unicode的处理,因为Unicode包含了几乎所有国家的语言。但是也有一些老的I/O没有跟上。新的为了支持16位,所以现在char是几个字节?因为1.5之后就是2个字节了嘛。一些常见的对应关系

  FileInputStream------FileReader

  File Out Stream-------FileWriter

  StringBufferInputStream---------StringReader

  ByteArrayInputStream -------- CharArrayReader

  Piped Input Stream--------PipeReader

  输出流与输入流基本相同。

 

  RandAccessFile不属于任何I/o,不怎么用。只有它支持搜寻方法,并且只使用与文件。

  今天先码到这

posted @ 2020-03-19 22:23  疯狂的莹大王  阅读(97)  评论(0编辑  收藏  举报