序列化集合

Posted newcityboy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了序列化集合相关的知识,希望对你有一定的参考价值。

package com.itcast.demo06.ObjectStream;

import java.io.*;
import java.util.ArrayList;

/**
* @author newcityman
* @date 2019/7/28 - 23:15
* 练习:序列化集合
* 步骤:
* 1、定义一个存储Person对象的ArrayList集合
* 2、往集合中存储person对象
* 3、创建一个序列化流ObjectOutputStream,对集合进行序列化
* 4、使用ObjectOutputStream对象中的方法writeObject,对集合进行序列化
* 5、创建一个反序列化流ObjectInputStream
* 6、使用ObjectInputStream对象中的方法readObject读取文件中保存的集合
* 7、把Object类型的集合转换成ArrayList类型
* 8、遍历ArrayList结合
* 9、释放资源
*/
public class Demo03Test
public static void main(String[] args) throws IOException, ClassNotFoundException
// 1、定义一个存储Person对象的ArrayList集合
ArrayList<Person> pList = new ArrayList<>();
// 2、往集合中存储person对象
pList.add(new Person("张山峰",70));
pList.add(new Person("赵义勇",20));
pList.add(new Person("李敏",30));
// 3、创建一个序列化流ObjectOutputStream,对集合进行序列化
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("day18_IOAndProperties\\person.txt"));
// 4、使用ObjectOutputStream对象中的方法writeObject,对集合进行序列化
oos.writeObject(pList);
// 5、创建一个反序列化流ObjectInputStream
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("day18_IOAndProperties\\person.txt"));
// 6、使用ObjectInputStream对象中的方法readObject读取文件中保存的集合
Object o = ois.readObject();
// 7、把Object类型的集合转换成ArrayList类型
ArrayList<Person> list = (ArrayList<Person>)o;
// 8、遍历ArrayList结合
for (Person person : list)
System.out.println(person);

ois.close();
oos.close();


以上是关于序列化集合的主要内容,如果未能解决你的问题,请参考以下文章

序列化集合

Kotlin函数式编程 ③ ( 早集合与惰性集合 | 惰性集合-序列 | generateSequence 序列创建函数 | 序列代码示例 | take 扩展函数分析 )

Kotlin函数式编程 ③ ( 早集合与惰性集合 | 惰性集合-序列 | generateSequence 序列创建函数 | 序列代码示例 | take 扩展函数分析 )

为啥 ktor 序列化不支持序列化不同元素类型的集合?

无法反序列化泛型类型的集合

如何使用 Json.Net 序列化/反序列化具有附加属性的自定义集合