已知的直接子类
|
已知间接子类
|
课程概述
从文件中读取字节的输入流。
文件文件=。。。InputStream in=null;尝试{in=新的BufferedInputStream(新的FileInputTream(文件));...
最后{if(in!=空){in.close();}}}
这条小溪是未缓冲。大多数呼叫者应该换行此流带有缓冲输入流
.
使用字符流
从文件。
总结
公共方法 |
整数
|
可获得的()
返回可以读取或跳过而不阻塞的估计字节数输入。
|
无效
|
关闭()
关闭此流。
|
文件频道
|
获取频道()
|
最终的文件描述符
|
获取FD()
返回基础文件描述符。
|
整数
|
阅读()
从该流中读取单个字节,并将其作为整数返回范围从0到255。
|
整数
|
阅读(字节[]缓冲区,int字节偏移量,int字节计数)
读数高达字节计数 字节,并将其存储在字节数组缓冲器 开始于字节偏移量 .
|
长的
|
跳过(长字节计数)
最多跳过个n个 此流中的字节数。
|
受保护的方法 |
无效
|
最后确定()
确保此流的所有资源在大约进行垃圾收集。
|
公共建筑商
公众的
文件输入流类
(文件描述符fd)
参数
fd公司
| 此流从中读取的FileDescriptor。 |
公众的
文件输入流类
(字符串路径)
相当于new FileInputStream(新文件(路径))
.
公共方法
公众整数
可获得的
()
返回可以读取或跳过而不阻塞更多字节的估计字节数输入。
请注意,此方法提供了很弱的保证,因此在实践。
首先,保证是“不阻塞更多输入”而不是“不阻塞”blocking”(阻塞):读取仍可能阻塞等待I/O完成-保证是只是它不必无限期地等待数据写入。这一切的结果方法不应被用作在不应被阻止的线程上执行I/O的许可证。
其次,结果是保守估计值,可能大大小于实际字节数可用。特别是,始终返回0的实现是正确的。通常,只有当调用方对将结果视为一个布尔型的“是”或“否”答案数据准备好了吗?".
第三,给定字节数是“可用的”这一事实并不能保证read或skip实际上会读取或跳过那么多字节:它们读取或跳过的字节可能更少。
认识到你不能使用此方法调整容器的大小,并假设您可以读取整个流,而无需调整容器大小。此类呼叫者可能应该将他们读到的所有内容都写给字节数组输出流
并将其转换为字节数组。或者,如果你从文件中读取,长度()
返回文件的当前长度(尽管假设文件的长度无法更改,那么读取文件本身就是错误的活泼)。
此方法在中的默认实现InputStream(输入流)
始终返回0。如果子类能够指示字节数,则应覆盖此方法可用。
公众无效
关闭
()
关闭此流。这个类的具体实现应该是免费的关闭期间的任何资源。这种实现没有任何作用。
公众整数
阅读
()
从该流中读取单个字节,并将其作为整数返回范围从0到255。如果流的末尾达到。块,直到读取了一个字节,即源的末尾检测到流或引发异常。
公众整数
阅读
(字节[]缓冲区,int字节偏移量,int字节计数)
读数高达字节计数
字节,并将其存储在字节数组缓冲器
开始于字节偏移量
.返回实际读取的字节数,如果流结束,则返回-1已联系到。
公众长的
跳过
(长字节计数)
最多跳过个n个
此流中的字节数。此方法不执行任何操作并返回0如果n个
为负数,但某些子类可能抛出。
注意此方法描述中的“至多”:此方法可以选择跳过字节数少于请求的字节数。呼叫者应该总是检查返回值。
此默认实现将字节读入临时缓冲区。具体的子类应该提供自己的实现。
受保护的方法