Java语言-47:字节缓冲输入流BufferInputStream

本文介绍了BufferedInputStream的基本概念,包括其构造方法及如何通过不同方式读取数据的方法。此外,还提供了一个完整的示例代码,演示了如何创建BufferedInputStream对象,并通过它来读取文件数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、BufferInputStream概述:

                    BufferedInputStream 为另一个输入流添加一些功能。在创建 BufferedInputStream 时,会创建一个内部缓冲区数组。在读取或跳过流中的字节时,可根据需要从包含的输入流再次填充该内部缓冲区,一次填充多个字节

2、BufferInputStream的构造方法和功能

            1)构造方法:

    a、 BufferedInputStream(InputStream in)

                  创建一个 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。

                b、BufferedInputStream(InputStream in, int size)

                  创建具有指定缓冲区大小的 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。

            2)常用方法:

                  a、read(byte[] b, int off, int len)

                      从此字节输入流中给定偏移量处开始将各字节读取到指定的 byte 数组中。

 

                  b、read() :读文件数据

3、BufferInputStream的构造方法和常用方法的代码体现

package IO;

import java.io.BufferedInputStream;
import java.io.FileInputStream;

/*    1)构造方法:
 *           a、 BufferedInputStream(InputStream in) 
                  创建一个 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。
                b、BufferedInputStream(InputStream in, int size) 
                  创建具有指定缓冲区大小的 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。
           2)常用方法:
                  a、read(byte[] b, int off, int len) 
                      从此字节输入流中给定偏移量处开始将各字节读取到指定的 byte 数组中。
                  b、read() :读文件数据
 * */
public class BufferedInputStream_method {


public static void main(String[] args) throws Exception {
// 创建缓冲字节流输入对象
BufferedInputStream bis = new BufferedInputStream(new FileInputStream("f.txt"));
// 读取数据
// 一次读取一个字节
int by = 0;
while ((by = bis.read()) != -1) {
System.out.print((char) by);
}

// 一次读取一个字节数组
// 创建字节数组
byte[] bys = new byte[1024];
int len = 0;
while ((len = bis.read(bys)) != -1) {
System.out.println(new String(bys, 0, len));
}
// 释放资源
bis.close();
}

}

          

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值