📅  最后修改于: 2023-12-03 15:15:55.604000             🧑  作者: Mango
available()
方法是在Java中的 BufferedInputStream
类中定义的一个方法。它用于返回输入流中可读取的字节数。available()
方法返回一个整数,表示当前输入流中还未被读取的字节数量。
BufferedInputStream
是一个用于提供缓冲功能的输入流,它继承自 InputStream
类,并提供了一些额外的功能。available()
方法是其中一个用于获取输入流状态的方法之一。
以下是 available()
方法的语法:
public int available() throws IOException
该方法不接受任何参数,返回值类型为 int
。
available()
方法返回一个整数,表示当前输入流中还未被读取的字节数量。如果返回值为0,表示当前没有可读取的字节。
下面的示例演示了如何使用 BufferedInputStream
类的 available()
方法来获取输入流中还未被读取的字节数量:
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
try {
// 创建一个输入流
FileInputStream fileInputStream = new FileInputStream("example.txt");
// 创建一个 BufferedInputStream 对象,用于提供缓冲功能
BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
// 使用 available() 方法获取缓冲区中还未被读取的字节数量
int availableBytes = bufferedInputStream.available();
// 输出结果
System.out.println("可读取的字节数量: " + availableBytes);
// 关闭流
bufferedInputStream.close();
fileInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上面的示例中,我们首先创建了一个 FileInputStream
对象,然后使用它来创建 BufferedInputStream
对象,用于提供缓冲功能。接下来,使用 available()
方法获取输入流中还未被读取的字节数量,并将结果输出到控制台。
注意,在使用 available()
方法之前,确保输入流已经被打开。另外,记得在不再使用输入流时,关闭输入流以确保资源的正确释放。
以上就是关于 Java BufferedInputStream
类的 available()
方法的介绍和示例。通过使用该方法,我们可以轻松获取输入流中还未被读取的字节数量,从而实现更灵活的流处理操作。