Java IO流 --- 流(Stream)的概念与分类

本文介绍了Java中的IO流,包括流的基本概念、流向分类、数据类型以及字节流和字符流的区别。详细讲解了字节流的InputStream和OutputStream以及字符流的Reader和Writer,阐述了如何进行文件读写操作。

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

流  --->  Stream

1.什么是流?

   流即代表流动,这里是指数据的流动,流是有方向的,从一端流向另一端,存在源头和目的地,即数据以一定形式(字符|字节)从源头流向目的地;

   程序     <------------->    文件|数组|网络连接|数据库(存放数据的对象)

   数据在程序和可操作数据源之间流动,以程序为中心

2. IO流的分类

    1)流向
        输入流|输出流
    2)数据类型
        字节流:以二进制形式传输(可以处理一切文件,如纯文本|音频|视频等)
        字符流以文本文件形式传输(只能处理纯文本)
    3)流的功能
        节点流:包裹源头(靠近源头最近的流)
        处理流:增强功能,提高性能(靠近目的地的流)
3. 字符流和字节流
    1)字节流
        输入流:InputStream ---> FileInputStream
        read(byte[] b)读取字节数组|read(byte[] b,int off, int len)读取一定长度字节数组+close();
        输出流:OutputStream ---> FileInputStream
        write(byte[] b)写入字节数组|write(byte[] b,int off, int len)写入一定长度字节数组+flush()刷新并强制写出+close();
    2)字符流
        输入流:Reader ---> FileReader
        read(char[] cbuf)读取字符数组|read(char[] cbuf,int off, int len)读取一定长度字符数组+close();
        输出流:Writer ---> FileWriter
        write(char[] cbuf)写入字符数组|write(char[] cbuf,int off, int len)写入一定长度字符数组+flush()刷新并强制写出+close();
4. 操作
    1)建立与文件联系
    2)选择对应流
    3)文件读取|写入
        数组大小
        read|write方法将数据读取|写入
    4)释放资源

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值