FilterInputStream 百科内容来自于: 百度百科

FilterInputStream及其派生类有两项重要任务。DataInputStream可以读取各种primitive及String。(所有的方法都以"read"打头,比如readByte( ), readFloat( ))。它,以及它的搭档DataOutputStream,能让你通过流将primitive数据从一个地方导到另一个地方。 其它的类都是用来修改InputStream的内部行为的:是不是做缓冲,是不是知道它所读取的行信息(允许你读取行号或设定行号),是不是会弹出单个字符。后两个看上去更像是给编译器用的(也就是说,它们大概是为Java编译器设计的),所以通常情况下,你是不大会用到它们的。 不论你用哪种I/O设备,输入的时候,最好都做缓冲。所以对I/O类库来说,比较明智的做法还是把不缓冲当特例(或者去直接调用方法),而不是像现在这样把缓冲当作特例。
FilterInputStream的种类
功能
构造函数的参数
用法
DataInputStream
与DataOutputStream配合使用,这样你就能以一种"可携带的方式(portable fashion)"从流里读取primitives了(int,char,long等)
InputStream
包含了一整套读取primitive数据的接口。
BufferedInputStream
用这个类来解决"每次要用数据的时候都要进行物理读取"的问题。你的意思是"用缓冲区。"
InputStream,以及可选的缓冲区的容量
它本身并不提供接口,只是提供一个缓冲区。需要连到一个"有接口的对象(interface object)"。
LineNumberInputStream
跟踪输入流的行号;有getLineNumber( )和setLineNumber(int)方法
InputStream
只是加一个行号,所以还得连一个"有接口的对象"。
PushbackInputStream
有一个"弹压单字节"的缓冲区(has a one byte push-back buffer),这样你就能把最后读到的那个字节再压回去了。
InputStream
主要用于编译器的扫描程序。可能是为支持Java的编译器而设计的。用的机会不多。
$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定