自学Java Part 7

一、字符流

用于处理字符数据的读入和写入,以char为单位

1、Reader类和Writer类

(1)Reader类
Reader类是处理字符输入类的父类
读取字符:
public int read() throws IOException:读取一个字符,返回值为读取的字符
pubic int read(char cbuf[]) throws IOException:
读取一系列字符到数组cbuf[] 中返回值为实际读取的字符的数量
public abstract int read(char cbuf[],int off,int len)throws IOException:读取len个字符,返回值为实际读取的字符数量
关闭流:
public abstract void close()throws IOException;
(2)Writer类
Writer类是处理所有字符流输出类的父类
向输出流写入字符:
public void write(int c) throws IOException:
将整型值c的低16位写入输出流
public void write(char cbuf[] ) throws IOException:
将字符数组cbuf[] 写入输出流
public abstract void write(char cbuf[],int of,int len) throws IOException:
将字符数组cbuf[] 从索引为off的位置处开始的len个字符写入输出流public void write(String str) throws IOException:
将字符串str中的字符写入输出流
public void write(String str,int off,int len) throws IOException:
将字符串str从索引为off的位置开始处的len个字符写入输出流
public void flush() :
刷空输出流, 并输出所有被缓存的字符
关闭流:public abstract void close()throws IOException

2、FileReader类和FileWrite类

文件输入流可以从指定的路径读取字符数据
(1)public FileReader(File file) :
该构造方法使用File类型的文件对象,创建FileReader类的实例对象
语法:
new FileReader(file) file为File文件类型的实例对象。
(2)public FileReader(String name)
该构造方法根据指定的文件名称和路径,创建FileReader
语法:
new FileReader(filePath);

文件字符输出流关联指定路径的文件,数据通过文件字符输出以字符为单位输出并保存出,

(3)public FileWriter(File file)使用File类型的对象,创建实例对象
语法如下:new FileWriter(file);
(4)public FileWriter(String name) 根据指定的文件名称和路径, 创建实例对象
语法如下:new FileWriter(filePath);

3、BufferedReader类和BufferedWrite类

(1)、BufferedReader类常用的方法如下
public int read(char[] cbuf) throws IOException
一次读取一个字节数组
public String readLine() throws IOException读取一个文本行,并将其返回为字符串。若数据可读, 则返回Null
BufferedReader是从字符输入流中读取文本, 缓冲各个字符,提高了字符、数组和行的读取效率。
(2)、BufferedWriter类中的方法都可返回void,常用方法如下
public void write(String s, int off, int len) 写入字符串的某一部分
public void flush() 刷新该流的缓存
public void newLine ()写入一个行分隔符

二、对象的序列化

1、定义:
对象通过写出描述自己状态的数值来记录自己
2、方法:
readObject() 反序列化方法
反序列化,就是从输入流中获取序列化的对象数据,用这些数据生成新的序列化方法对象
语法如下:Object object = roadObject();
object为Java对象
writeObject() 序列化方法
序列化就是将对象写入输出流,这个输出流可以是文件输出流、网络输出流或其他数据输出流
语法如下:writeObject(object);
object为将要序列化的对象
3、构造对象的输入输出流
序列化一个对象,必须要与一定的对象输入/输出流联系起来,通过对象输出流将对象状态保存下来,再通过对象输入流将对象状态恢复
java.io包中提供了ObjectInputStream和ObjectOutputStream, 将数据流功能扩展至可读写对象
在ObjectInputStream中用readObject方法可以直接读取一个对象,ObjectOutputStream中writeObject() 方法可以直接将对象保存到输出流中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值