Java BufferedInputStream
精华
小牛编辑
173浏览
2023-03-14
1 什么是Java BufferedInputStream
Java BufferedInputStream 类用于从Stream读取信息。它在内部使用缓冲机制来提高性能。
关于BufferedInputStream的要点是:
- 当跳过或读取流中的字节时,内部缓冲区自动从包含的输入流中重新填充,一次填充多个字节。
- 创建BufferedInputStream时,将创建一个内部缓冲区数组。
2 Java BufferedInputStream的语法
public class BufferedInputStream extends FilterInputStream
3 Java BufferedInputStream的构造方法
构造方法 | 描述 |
---|---|
BufferedInputStream(InputStream IS) | 创建BufferedInputStream并将其参数(输入流IS)保存起来以备后用。 |
BufferedInputStream(InputStream IS, int size) | 创建具有指定缓冲区大小的BufferedInputStream,并将其参数(输入流IS)保存起来以备后用。 |
4 Java BufferedInputStream的方法
方法 | 描述 |
---|---|
int available() | 返回可以从输入流读取的估计字节数,而不会被输入流的下一个调用方法阻塞。 |
int read() | 从输入流中读取下一个数据字节。 |
int read(byte[] b, int off, int ln) | 从给定的偏移量开始,它将指定的字节输入流中的字节读入指定的字节数组。 |
void close() | 关闭输入流并释放与该流关联的任何系统资源。 |
void reset() | 将流重新定位在此输入流上最后一次调用mark方法的位置。 |
void mark(int readlimit) | 查看输入流的mark方法的常规协定。 |
long skip(long x) | 跳过并从输入流中丢弃x字节的数据。 |
boolean markSupported() | 测试输入流是否支持mark和reset方法。 |
5 Java BufferedInputStream的例子
让我们看一个使用BufferedInputStream 读取文件数据的简单示例:
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
/**
* Java BufferedInputStream的例子
*/
import java.io.*;
public class Demo{
public static void main(String args[]){
try{
FileInputStream fin=new FileInputStream("D:\\xnip\\test.txt");
BufferedInputStream bin=new BufferedInputStream(fin);
int i;
while((i=bin.read())!=-1){
System.out.print((char)i);
}
bin.close();
fin.close();
}catch(Exception e){System.out.println(e);}
}
}
我们假设您在已经建立"test.txt”且内容为:
Welcome to Yiidian.
以上程序输出结果为:
Welcome to Yiidian.