Java--IO类

本文介绍了Java中的File类,包括其构造方法和常用方法;详细讲解了I/O类、字节流与字符流的区别以及处理方式;涉及PrintStream和对象输入输出流,特别是对象序列化和transient关键字的使用。

File类

file类是硬盘上文件和文件夹的抽象表示
一个File类的对象就表示硬盘上的一个具体的文件或文件夹
构造方法:
File(File parent,String child)
从父抽象路径和子路径名字符串创建新的File实例.
File(String pathname)
通过将给定的路径名字符串转换为抽象路径名来创建新的File实例
File(String parent,String child)
常用方法:
在这里插入图片描述

I/O类

输入及输出的概念:
● 输入输出(I/O) 把电脑硬盘上的数据读到程序中,称为输入,即input,进行数据的read 操作从程序往外部设备写数据,称为输出,即output,进行数据的write操作
steam结尾都是字节流
● 流按着数据的传输方向分为:
● 输入流:往程序中读叫输入流。
● 输出流:从程序中往外写叫输出流。
● InputStream和OutputStream的子类都是字节流 可以读写二进制文
件,主要处理音频、图片、歌曲、字节流,处理单元 为1个字节。
● Reader和Writer的子类都是字符流 主要处理字符或字符串,字符流处
理单元为1个字符。 字节流将读取到的字节数据,去指定的编码表中获取对应文字。
字节流与字符流
● 字节流中常用类
字节输入流 FileInputStream
字节输出流 FileOutputStream
● 字符流中常用类
字符输入流 FileReader
字符输出流 FileWriter
输入输出异常处理:
在这里插入图片描述

打印流

● Print 打印流:
只做输出没有输入 打印流分为字节打印流和字符打印流
PrintWriter:
字符打印流 print方法可以打印各种类型数据
在javaweb项目中,服务器端向客户端响应数据以打印流的方式响应.
在这里插入图片描述

对象输入输出流–对象序列化
● 对象的寿命通常随着生成该对象的程序的终止而终止。 有时候,可能需
要将对象的状态保存下来,在需要时再将对象恢复。
● 对象的输入输出流 :
主要的作用是用于写入对象信息与读取对象信息。
对象信息 一旦写到文件上那么对象的信息就可以做到持久化了.
对象的输出流:ObjectOutputStream(也是包装流)
对象的输入流:ObjectInputStream
将对象输出到文件中称为对象的序列化
将对象从文件输入到程序中称为对象的反序列化,发序列化的过程中会创建新的对象存储文件中的对象信息,也是创建对象的方式之一.
● 在ObjectInputStream 中用readObject()方法可以直接读取一个对象,
ObjectOutputStream中用writeObject()方法可以直接将对象保存到输出流中。
对象是在内存中存储的,内存中数据随着程序结束就销毁了,有时候需要将这些对象保存下来,使用时再还原回来.可以使用对象的输入流和输出流.
如果需要将类序列化到文件中,该类必须实现Serializable接口,为我们的类在运行生成一个编号(唯一的),默认生成序列号,会在类信息发生修改后,系列号会重新生成,显示生成序列号,类信息发生修改后,序列号不变
transient关键字
默认情况下当执行了对象序列化的时候会将类中的全部属性的内容进行全部的序列化操作,但是很多情况下有一些属性可能并不需要序列化的处理,这个时候就可以在属性的定义上使用transient关键字来完成了。
private transient String name;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值