Java io流

Java的IO流用于读写文件和网络数据,分为输入流和输出流,按数据单位分为字节流和字符流。四大抽象类包括Reader和Writer(字符流)以及InputStream和OutputStream(字节流)。转换流如InputStreamReader和OutputStreamWriter用于在字节流和字符流间转换。对象流如ObjectInputStream则能处理对象的序列化和反序列化。
摘要由CSDN通过智能技术生成

1.io流作用:用于读写文件中的数据(可以读写文件,或网络中的数据...)

2.IO 流中,以程序为参照物进行读写

3.IO流分类:(1)按流的方向 可分为输入流(读取),输出流(写出)

                    (2)按操作文件类型 可分为字节流(可操所有类型文件) 字符流(纯文本文件)

4.

四大抽象类

编辑 播报

字符流:

Reader

Writer

字节流

InputStream

(输入数据)

OutputStream

(输出数据)

5.输入流

编辑 播报

InputStream的基本方法

int read()throws IOException

读取一个字节以整数形式返回,如果返回-1已到输入流的末尾

voidclose()throwsIOException

关闭流释放内存资源

longskip(longn)throwsIOException

跳过n个字节不读

输出流

编辑 播报

OutputStream的基本方法

voidwrite(intb)throwsIOException

向输出流写入一个字节数据

voidflush()throws IOException

将输出流中缓冲的数据全部写出到目的地

Writer

编辑 播报

Writer的基本方法

void write(int c)

throwsIOException

向输出流写入一个字符数据

void write

(String str)

throwsIOException

将一个字符串中的字

符写入到输出流

void write

(String str,

int offset,

int length)

将一个字符串从offset开始的length个字符写入到输出流

void flush()

throwsIOException

将输出流中缓冲的数据全部写出到目的地

Reader

编辑 播报

Reader的基本方法

int

read

()

throws

IOException

读取一个字符以整数形式返回,如

果返回

-1

已到输入流的末尾

一、两者的组成不同:
1、字节流的组成:字节流是由字节组成的。
2、字符流的组成:字符流是由字符组成的。
二、两者的处理不同:
1、字节流的处理:主要用在处理二进制数据,它是按字节来处理的但实际中很多的数据是文本。
2、字符流的处理:按虚拟机的encode来处理,也就是要进行字符集的转化。
Java里字符由两个字节组成. 1字符=2字节
JAVA中的字节流是采用ASCII编码的,
字符流是采用好似UTF编码,支持中文的
字节流与字符流主要的区别是他们的的处理方式
字节流是最基本的,采用ASCII编码,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的
但实际中很多的数据是文本,又提出了字符流的概念,采用Unicode编码.它是按虚拟机的encode来处理,也就是要进行字符集的转化
这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联。

 下面来谈一组新的流:转换流
转换流:作用:将字节流和字符流进行转换。
转换流 属于 字节流还是字符流?属于字符流
InputStreamReader 作用:字节输入流 -->字符输入流
OutputStreamWriter 作用: 字符输出流 -->字节输出流

最后来谈谈,对象流
对象流:ObjectInputStream,ObjectInputStream
用于存储和读取基本数据类型数据或对象的处理流。
它的强大之处就是可以把Java中的对象写入到数据源中,也能把对象从数据源中还原回来。

python023基于Python旅游景点推荐系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值