Java BufferedInputStream类

Java BufferedInputStream类用于从流中读取信息。它内部使用缓冲机制来提高性能。

关于BufferedInputStream的重要点如下:

  • 当从流中跳过或读取字节时,内部缓冲区会自动从所包含的输入流中一次性填充许多字节。
  • 创建BufferedInputStream时,会创建一个内部缓冲区数组。

Java BufferedInputStream类声明

让我们看一下Java.io.BufferedInputStream类的声明:

public class BufferedInputStream extends FilterInputStream

Java BufferedInputStream类构造方法

ConstructorDescription
BufferedInputStream(InputStream IS)它创建 BufferedInputStream 并保存它的参数,输入流 IS,供以后使用。
BufferedInputStream(InputStream IS, int size)它创建具有指定缓冲区大小的 BufferedInputStream 并保存它的参数,输入流 IS,供以后使用。

Java BufferedInputStream类方法

MethodDescription
int available()它返回可以从输入流中读取的估计字节数,而不会被输入流的下一个调用方法阻塞。
int read()它从输入流中读取下一个字节的数据。
int read(byte[] b, int off, int ln)它从指定的字节输入流中读取字节到指定的字节数组,从给定的偏移量开始。
void close()它关闭输入流并释放与该流关联的任何系统资源。
void reset()它将流重新定位到上次在此输入流上调用标记方法的位置。
void mark(int readlimit)它看到输入流的标记方法的一般契约
long skip(long x)它跳过并丢弃输入流中 x 字节的数据。
boolean markSupported()它测试输入流以支持标记和重置方法。

Java BufferedInputStream的示例

让我们看一个简单的示例,使用BufferedInputStream读取文件数据:

package com.javatpoint;  
   
import java.io.*;  
public class BufferedInputStreamExample{    
 public static void main(String args[]){    
  try{    
    FileInputStream fin=new FileInputStream("D:\\testout.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);}    
 }    
}  

这里,我们假设您的"testout.txt"文件中有以下数据:

javaTpoint

输出:

javaTpoint

标签: java, Java面试题, Java下载, java教程, java技术, Java学习, Java学习教程, Java语言, Java开发, Java入门教程, Java进阶教程, Java高级教程, Java笔试题, Java编程思想