Java之序列化和反序列化
序列化的对象:
package test_demo.SerializableOper; import java.io.Serializable;
/*
* 序列化对象需要实现序列号接口
* */
public class Book implements Serializable {
// 指定序列化的jdk版本
// private static final long serialVersionUID =1L;
String name;
int price; public Book(String name, int price) {
this.name = name;
this.price = price;
} public String toString() {
return "name: " + name + ", price: " + price;
}
}
序列化和反序列化操作代码:
package test_demo.SerializableOper; import java.io.*; /*
* 序列化和反序列化举例
* 序列化:把对象保存在硬盘的过程
* 序列化的对象需要实现序列化接口
* */
public class SerializableOper {
public static void main(String args[]) throws IOException, ClassNotFoundException {
Book book = new Book("阿甘正传", 55);
System.out.println(book);
String filePath = "C:\\testdata\\s\\book.txt"; // 序列化
FileOutputStream fos = new FileOutputStream(filePath);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(book);
oos.close();
fos.close(); // 反序列化
FileInputStream fis = new FileInputStream(filePath);
ObjectInputStream ois = new ObjectInputStream(fis);
Book b = (Book) ois.readObject();
System.out.println(b); }
}
book对象序列化后保存在C:\testdata\s\book.txt中。
Java之序列化和反序列化的更多相关文章
- java 对象序列化与反序列化
Java序列化与反序列化是什么? 为什么需要序列化与反序列化? 如何实现Java序列化与反序列化? 本文围绕这些问题进行了探讨. 1.Java序列化与反序列化 Java序列化是指把Java对象转换为 ...
- Java对象序列化与反序列化一 JSON
Java对象序列化与反序列化一 JSON 1. 依赖库 jackson-all-1.6.1.jar 2. 代码 public class Student { private String nam ...
- Java对象序列化和反序列化的工具方法
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...
- java之序列化与反序列化
1.这里主要是介绍Protobuf提供的序列化与反序列化的高效性.相对于传统的java提供的序列化来说,Protobuf的效率提高了很多倍.但是也有不足的地方,就是proto在对象序列化的时候抛弃了很 ...
- Java基础—序列化与反序列化(转载)
转载自: Java序列化与反序列化 1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列的过程:而Java反序列化是指把字节序列恢复为Java对象的过程. 2.为什么需要序列化 ...
- Java 中序列化与反序列化
一. 序列化和反序列化概念 Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization是一种将这些字节重建成一个对象的过程.将程序中的对象,放入文 ...
- JAVA的序列化与反序列化
一.为什么要进行序列化 再介绍之前,我们有必要先了解下对象的生命周期,我们知道Java对象的生命周期,也即Java中的远程方法调用RMI也会被用到,在网络中要传输对象的话,则必须要对对象进行序列化,关 ...
- 深入分析Java的序列化与反序列化
序列化是一种对象持久化的手段.普遍应用在网络传输.RMI等场景中.本文通过分析ArrayList的序列化来介绍Java序列化的相关内容.主要涉及到以下几个问题: 怎么实现Java的序列化 为什么实现了 ...
- Java 对象序列化和反序列化
之前的文章中我们介绍过有关字节流字符流的使用,当时我们对于将一个对象输出到流中的操作,使用DataOutputStream流将该对象中的每个属性值逐个输出到流中,读出时相反.在我们看来这种行 ...
随机推荐
- Ubuntu 重新安装声卡驱动
有的时候ubuntu 的声卡不能用,没有声音也不能使用麦克风,所有很困惑,查看声卡驱动的时候不显示声卡的驱动,所有我们要自己安装声卡驱动, 1.下载驱动包这是比较新的声卡驱动,1.0.20 $ wge ...
- 【转】软件质量之道:SourceMonitor
转:https://blog.csdn.net/feng_ma_niu/article/details/40594799 SourceMonitor是一个源代码衡量工具,由http://www.cam ...
- 609E- Minimum spanning tree for each edge
Connected undirected weighted graph without self-loops and multiple edges is given. Graph contains n ...
- FFMpeg笔记(七) 代码结构分析,以HLS为例
HLS流在播放时是先解协议(hls.c)后解封装(mpegts.c),libavformat下的hls.c和mpegts.c实际上是同一个级别的,同属于demuxer. 一.解HLS协议 1. FFm ...
- 如何挂载另一个lvm硬盘
由于测试导致系统启动不了,需要将系统中的数据拷贝出来,所以想到将磁盘挂载到另一个能用的系统中进行拷贝,但是由于创建的系统都是用默认的方式创建的,所以一般的系统盘都是由两个分区组成,例如/dev/sda ...
- VB6 CHECK is run as admin privilege
vb6 code: Private Declare Function IsUserAnAdmin Lib "Shell32" Alias "#680" () A ...
- 20155334 《网络攻防》Exp5 MSF基础应用
一.基础问题回答 解释exploit,payload,encode是什么: 项目 作用 exploit 是负载有用代码的交通工具,让代码到达目的地,并作用 payload 是有具体功能的代码,能够完成 ...
- WPF编程,C#中对话框自动关闭的一种方法。
原文:WPF编程,C#中对话框自动关闭的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details/8 ...
- jqGrid 奇淫巧技
1.新建maven-web项目 结构如图 #GLOBAL_DIGITALMEDIA_SEARCH_grid-table > tbody > tr >td:last-child{ te ...
- Css_*^$
#search_condition [class*=search_submit] 表示class name里面的值包含search_submit $("#search_condition [ ...