输入和输出处理(二)

输入和输出处理(二)

1. 掌握基本的字符流的使用

字符流的基类:
在这里插入图片描述
​ Reader

​ Writer

字符输入流

常用实现类:
在这里插入图片描述

​ FileReader
在这里插入图片描述

构造:

​ FileReader(File file);

​ FileReader(String pathname);

常用方法:

​ int read(char[] buffer); 读取数据到字符

数组中 返回读取的字符数

​ int read(char[] buffer,int offset,int

扫描二维码关注公众号,回复: 6141365 查看本文章

len); 读取指定长度的字符数据到数组中 返回读取的字符数

字符输出流

​ FileWriter

构造:

​ FileWriter(File file);

​ FileWriter(String pathname);

​ FileWriter(String/File pathname,boolean

append); 追加数据

常用方法:

​ void write(String str); 输出一个字符串

​ void write(String str,int offset,int

len); 输出一个字符串的一部分

​ void write(char[] buffer); 输出一个字符

数组

​ void writer(char[] buffer,int offset,

int len); 输出一个字符数组的一部分

**关流方法:**void close(); 在try-catch中可以通过try()

形式自动关流。

2. 掌握高效字符流的使用

在这里插入图片描述

高效字符输入流

在这里插入图片描述
BufferedReader

构造:
在这里插入图片描述

​ BufferedReader(Reader re);

常用方法:

​ String readLine(); 读取一行数据

​ 其他同普通字符输入流,但是比之更加高效。
在这里插入图片描述

高效字符输出流

在这里插入图片描述
BufferedWriter
在这里插入图片描述
构造:

​ BufferedWriter(Writer wr);

常用方法:

​ 方法基本和普通字符输出流一样,但是比之更加高效。

(都是重新重写自Writer类的相关方法)

3. 读写二进制文件(了解)

在这里插入图片描述
在这里插入图片描述
读写变量数据。

4. 掌握序列化和反序列化的实现(对象流)

读写对象数据。

**序列化:**将对象按照指定的规则存储到文件中。
在这里插入图片描述
**反序列化:**将文件中的数据按照指定的规则转换为对象。

序列化

在这里插入图片描述
在这里插入图片描述
ObjectOutputStream

1556421754203

反序列化

ObjectInputStream

public class Demo2 {

	public static void main(String[] args) {
		try (
			// 构造:ObjectInputStream

(InputStream is)
			ObjectInputStream ois = new 

ObjectInputStream(new FileInputStream("d:/hotel.txt"));
			){
			// 反序列化
			Object obj = ois.readObject();
			Hotel hotel = (Hotel)obj;
			System.out.println(hotel);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

猜你喜欢

转载自blog.csdn.net/Javastudenthhhk/article/details/89846412