Java——IO

博客主要介绍了流的相关知识,包括流的定义与本质是数据传输。对流进行了划分,如按方向分输入流、输出流,按操作单元分字节流、字符流,按角色分节点流、处理流。还阐述了字节和字符、节点流和处理流的区别,以及编码类Charset。

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

流的介绍

:数据有序集合,可以从一个端传输到另一个端的过程流(有方向的数据传输)。

流的本质:数据传输。

(一)流的划分:

1、根据方向(输入流、输出流)

输入流:将数据从介质(磁盘或网络)到当前程序的传输称为输入流。

基类:InputStream(字节输入流)、Writer(字符输入流)

输出流:将数据从程序写入到存储介质的传输称为输入流。

基类:OutputStream(字节输出流)、Reader(字符输出流)

2、根据操作单元(字节流、字符流)

字节流:二进制表示的数据。

基类:InputStream(字节输入流)、OutputStream(字节输出流)

字符流:数据以字符形式表示

基类:Writer(字符输入流)、Reader(字符输出流)

3、根据角色(节点流、处理流)

节点流(介质流):和介质直接连接的流,数据从/向一个介质(磁盘、鼠标、屏幕)读/写的流,称为节点流,也称为低级流

处理流(高级流):和节点流直接相连的流。

(二)字节和字符的区别

字节:存储的是数据是二进制形式

字符:存储的字符数据

1、读写单元不同

字节流是以字节(8bit)为单位;字符流以字符为单位,根据码表映射字符,一次可读取多个字节。

2、处理的对象不同

字节流能处理所有类型的数据(图片、视频);字符流只能处理字符类型的数据。

3、处理效率

字节流(直接进行读取)效率较高;字符流(涉及到编码解码的过程)效率较低。

4、可移植性

字节流(和平台无关)可移植性较高;字符流(需要考虑编码解码过程,编码和解码的码表要保持一致)可移植性较低。

(三)节点流和处理流的区别

节点流直接和介质相连接;处理流直接和节点流相连接。

(四)Charset——编码类

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值