【Buffer】BufferOutputStream和BufferInputStream

**

BufferOutputStream和BufferInputStream

**

BufferOutputStream

package Java02.jinjie.Buffer;

import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;

/*
* public class BufferedOutputStream extends FilterOutputStream
*       该类实现缓冲的输出流。通过设置这种输出流,应用程序就可以将各个字节写入底层输出流中,而不必针对每次字节写入调用底层系统。
*   BufferedOutputStream的构造方法:
*       1.BufferedOutputStream(OutputStream out)
             创建一个新的缓冲输出流,以将数据写入指定的底层输出流。
        2.BufferedOutputStream(OutputStream out, int size)
             创建一个新的缓冲输出流,以将具有指定缓冲区大小的数据写入指定的底层输出流。
        参数:
        *   OutputStream out:字节输出流
        *   OutputStream out, int size 字节输出流,size用于指定缓冲区数组长度
 * */
public class BufferOutputStream {
    public static void main(String[] args) throws IOException {
//        创建FileOutputStream对象
        FileOutputStream fos = new FileOutputStream("C:\\Users" +
                "\\syj\\Desktop\\Java工程笔记\\02-java语言进阶笔记\\g.txt");
//        创建BufferedOutputStream对象
        BufferedOutputStream bos = new BufferedOutputStream(fos);
//        将数据写到内存缓冲区中
        bos.write("得分人非完人个人共和国".getBytes(StandardCharsets.UTF_8));
//        刷新缓冲区,把数据传给文件
        bos.flush();
//        释放资源
        bos.close();
//        bos.close()中包含bos.flush()
    }
}

BufferInputStream

package Java02.jinjie.Buffer;
/*public class BufferedInputStream extends FilterInputStream
*   BufferedInputStream:
*        为另一个输入流添加一些功能,即缓冲输入以及支持 mark 和 reset 方法的能力。
*        在创建 BufferedInputStream 时,会创建一个内部缓冲区数组。
*        在读取或跳过流中的字节时,可根据需要从包含的输入流再次填充该内部缓冲区,一次填充多个字节。
*        mark 操作记录输入流中的某个点,reset 操作使得在从包含的输入流中获取新字节之前,再次读取自最后一次 mark 操作后读取的所有字节。
*    构造方法:
*        1.BufferedInputStream(InputStream in)
                创建一个 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。
         2.BufferedInputStream(InputStream in, int size)
                创建具有指定缓冲区大小的 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。
* */

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

public class BufferInputStream {
    public static void main(String[] args) throws IOException {
//      1.创建FileInputStream对象
        FileInputStream fis = new FileInputStream("C:\\Users" +
                "\\syj\\Desktop\\Java工程笔记\\02-java语言进阶笔记\\g.txt");
//      2.创建BufferedInputStream对象,用于接收字节输出流
        BufferedInputStream bis = new BufferedInputStream(fis);
//      3.read方法读取数据
        int  len =0;

        while ((len = bis.read())!=-1){
            System.out.println(len);

        }
//      4.释放资源
        bis.close();
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值