InputStream用来表示那些从不同的数据源产生输入的类。这些数据源包括:
1: 字节数组
2: String对象
3: 文件
4: “管道”,工作方式与实际管道工作方式相似,即,从一端输入,从另一端输出
5: 一个由其他种类的流组成的序列,以便我们可以将他们收集合并到一个流内
6: 其他数据源,如Internet连接等(参见可以在www.MindView.net获得的<<Thinking in Enterprise Java>>)
每一种数据源都有相应的InputStream子类。另外,FilterInputstream也属于一种InputStream,为"装饰器"类提供基类,其中,“装饰器”类可以把属性或者有用的接口与输入流连接在一起。
通过FilterInputStream从inputStream 中读取数据。FilterInputStream类能够完成两件完全不同的事情。其中,DataInputStream允许我们读取不同的基本类型数据以及String对象(所有方法都以“read”开头)搭配相应的DataOutputStream,我们就可以通过数据“流”将基本类型的数据从一个地方迁移到另一个地方。具体是那些地方由发送这些数据那些类决定。
这几天一直在搞数据传输方面的内容,通过inputStream和outputStream的字节传递虽然并不常见,但是在性能要求比较高的地方,还是非常有用的。现在的一套数据传输方案,底层用的就是这个。
至于GraniteDS也是在学习中,希望可以解决数据传输中的大问题。