java:序列化Serializable 接口

public class SerializePerson implements Serializable {

	private String name;
private int age; public SerializePerson(String name, int age)
{ this.name = name;
this.age = age;
} @Override
public String toString() {
return "姓名:" + name + ", 年龄:" + age;
} }

  

一,单对象序列化

public static void main(String[] args) throws Exception, Exception {
// TODO 自动生成的方法存根 if( args[0].equals("set") )
{ setPseron(); }else if( args[0].equals("get") )
{
getPseron();
}else{
System.out.println("抱歉,你什么都没有输入");
}
System.out.println(args[0]); } public static void setPseron() throws Exception, IOException
{ File file = new File("F:"+File.separator+"work"+File.separator+"work"+File.separator+"a.txt");
ObjectOutputStream oobs = null;
oobs = new ObjectOutputStream( new FileOutputStream(file) );
oobs.writeObject(new SerializePerson("张三",22));
oobs.close(); } public static void getPseron() throws Exception, IOException
{
File file = new File("F:"+File.separator+"work"+File.separator+"work"+File.separator+"a.txt");
ObjectInputStream oips = null;
oips = new ObjectInputStream( new FileInputStream(file) );
Object obj = oips.readObject();
SerializePerson per = (SerializePerson) obj;
System.out.println(per); }

  

二。多对象,多数组序列化

public static void main(String[] args) throws Exception, Exception
{ if(args[0].equals("set"))
{ setPerson();
}else if(args[0].equals("get"))
{
Object obj = getPerson();
SerializePerson per[] = (SerializePerson[]) obj;
print(per); }else{
System.out.println("请输入一个操作");
} } public static void setPerson() throws Exception, IOException
{
File file = new File("F:"+File.separator+"work"+File.separator+"work"+File.separator+"person.per");
ObjectOutputStream oopt = new ObjectOutputStream( new FileOutputStream(file) ); SerializePerson per[] = {new SerializePerson("张三",22), new SerializePerson("李四",44), new SerializePerson("王五",33)};
oopt.writeObject(per);
oopt.close();
} public static Object getPerson() throws Exception, IOException
{
File file = new File("F:"+File.separator+"work"+File.separator+"work"+File.separator+"person.per");
ObjectInputStream lis = null;
lis = new ObjectInputStream( new FileInputStream(file) );
Object obj = null;
obj = lis.readObject();
lis.close();
return obj; } public static void print(SerializePerson per[])
{
for(SerializePerson p: per)
{
System.out.println(p);
}
}

  

java:序列化Serializable 接口的更多相关文章

  1. Java 序列化Serializable接口

    1 什么是序列化和反序列化 Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization是一种将这些字节重建成一个对象的过程. 2  什么情况下需要 ...

  2. 编程进阶:Java小白的序列化Serializable接口

    在之前的学习过程中,我们知道了如何使用FileInputStream输入流和FileOutputStream输出流编写程序读写文件. 下面我们来学习一下如何使用序列化和反序列化读写文件. 一.序列化 ...

  3. Java 的序列化Serializable接口介绍及应用

    常看到类中有一串很长的 如 private static final long serialVersionUID = -4667619549931154146L;的数字声明.这些其实是对此类进行序列化 ...

  4. Java 序列化Serializable详解

    Java 序列化Serializable详解(附详细例子) Java 序列化Serializable详解(附详细例子) 1.什么是序列化和反序列化Serialization(序列化)是一种将对象以一连 ...

  5. Java 序列化Serializable详解(附详细例子)

    Java 序列化Serializable详解(附详细例子) 1.什么是序列化和反序列化 Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization ...

  6. Java 序列化Serializable具体解释(附具体样例)

    Java 序列化Serializable具体解释(附具体样例) 1.什么是序列化和反序列化 Serialization(序列化)是一种将对象以一连串的字节描写叙述的过程:反序列化deserializa ...

  7. java 序列化Serializable 详解

    Java 序列化Serializable详解(附详细例子) 1.什么是序列化和反序列化Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization是 ...

  8. Java 序列化Serializable详解(附详细例子)

    Java 序列化Serializable详解(附详细例子) 1.什么是序列化和反序列化Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization是 ...

  9. 序列化Serializable接口

    一.序列化 1.什么是序列化? 序列化就是将对象的状态存储到特定存储介质中的过程,也就是将对象状态转换为可保持或传输格式的过程. 在序列化过程中,会将对象的公有成员.私有成员(包括类名),转换为字节流 ...

随机推荐

  1. Vue知识整理15:组件注册

    采用局部注册组件: 将代码放在vue的一个实例中,而不是单列申明.

  2. robotframework json解析

    用robotframework做接口测试,现在用的最多的就是json格式的数据,刚开始接触会感觉一脸懵逼,不知道怎么去取里面的值.在这里简单介绍一下,其实本身json取值不会太难,只要理解层次关系,一 ...

  3. WEB框架实战总结

    Django 在新一代的 Web框架 中非常出色 使用Python开发Web,最简单,原始和直接的办法是使用CGI标准,可以用WSGI接口 一.WSGI接口实现web页面 运行WSGI服务 我们先编写 ...

  4. 【Qt开发】设置Qt应用程序图标

    [Qt开发]设置Qt应用程序图标 标签:[Qt开发] 首先,准备一个图标,例如:zx.ico,并新建一个文本文档,在里面添加一行: IDI_ICON1 ICON DISCARDABLE"zx ...

  5. 20191112 Spring Boot官方文档学习(4.5-4.6)

    4.5.国际化 Spring Boot支持本地化消息,因此您的应用程序可以迎合不同语言首选项的用户.默认情况下,Spring Boot messages在类路径的根目录下查找message resou ...

  6. iptables添加开放端口

    查看状态 iptables -L -n 编辑/etc/sysconfig/iptables -A INPUT -p tcp -m tcp --dport 4000 -j ACCEPT 重启 servi ...

  7. webView实现网页缩放

    项目中遇到要实现webview上面的网页缩放功能,在网上查了资料加自己实践后得出结论: //缩放开关,设置此属性,仅支持双击缩放,不支持触摸缩放 mWebView.getSettings().setS ...

  8. Spring Boot 为什么这么火?(二)

    Spring Boot 的火 网上连载了 Spring Boot 系列文章,没想到这一开始便与 Spring Boot 深度结缘. 技术社区 Spring Boot 的文章越来越多:Spring Bo ...

  9. yum安装php7

    1.安装epel源 yum -y install epel-release yum -y install http://dl.fedoraproject.org/pub/epel/epel-relea ...

  10. 【监控实践】【4.2】perfmon监控性能计数器(基于typeperf命令)

    关键词:typeperf typeperf 命令 使用示例: 案例1:#使用typeperf收集windows cpu.内存.硬盘性能 #使用typeperf收集windows cpu.内存.硬盘性能 ...