io

InputStream的作用是用来表示那些从不同数据源产生输入的类:包括

  1. 字节数组      ByteArray
  2. String对象   StringBuffer
  3. 文件            File
  4. 管道        Piped
  5. 一种由其他种类的流组成的序列   SequenceInputStream  (两个或多个InputStream对象转换成单一InputStream)

OutputStream决定了输出所要去的目标 

  1. 字节数组   ByteArray
  2. 文件     File
  3. 通道         Piped

装饰器类为FilterInputStream/FilterOutputStream

 FilterInputStream类型有2个功能:a.DataInputStream可以读取不同的基本类型数据以及String对象  b.其他FilterInputStream则在内部修改InputStream的行为方式:1是否缓冲2是否保留它所读过的夯3是否把单一字符推回输入流等

  1. DataInputStream
  2. BufferedInputStream
  3. LineNumberInputStream
  4. PushbackInputStream

无缓冲输入为特殊情况,一般都缓冲

FilterOutputStream类型

  1. DataInputStream
  2. PrintStream
  3. BufferedOutputStream

 

InputStreamReader/OutputStreamWriter 适配器模式

 Reader和Writer面向字符,兼容Unicode,目的为了提供国际化功能

PrintStream可视化打印所有的基本数据类型以及String对象

DataOutputStream的目的是将数据元素置入“流”中,是DataInputStream能够可移植地重构它们

使用readLine()时应该使用BufferedReader,除此种情况之外,DataInputStream认识IO类库的首选成员

自我独立的类

RandomAccessFile适用于由大小一致的记录组成的文件,可以使用seek()将记录从一处转移到另一处,然后读取或者修改,getFilePointer()查找当前所处的文件位置,搜寻方法只适用于文件。不是InputStream或OutputStream继承层次结构,实现了DataInput和DataOutput接口(DataInputStream和DataOutputStream也实现了这两个接口),它和这两个继承层次结构没有任何关联。

 

标准io

System.in(未被包装,在读取System.in之前必须对其进行包装)、System.out、System.err(后两者被包装成了PrintStream)

总结

io中用到了装饰器模式和适配器模式 

阅读更多
个人分类: io/nio
上一篇java多线程
下一篇activeMQ
想对作者说点什么? 我来说一句

IO模型编程实例

2012年05月09日 480KB 下载

java IO文档

2018年02月03日 3.92MB 下载

io文档文档

2018年05月07日 3.17MB 下载

avr 的io使用方法

2012年05月22日 9KB 下载

Javaio流思维导图

2018年02月21日 356KB 下载

java IO流详解-01.ppt

2011年04月23日 587KB 下载

常用IO芯片引脚说明

2009年05月18日 723KB 下载

JAVA IO 输入输出流

2008年10月17日 11KB 下载

java新IO文件流

2008年12月29日 1KB 下载

没有更多推荐了,返回首页

关闭
关闭