ObjectIntputStream / ObjectOutputStream 类
package com.monekey1025; public class User implements java.io.Serializable{
private static final long serialVersionUID = 1L; private String userName;
private String passWord; //transient修饰成员变量,表示该成员变量不能进行序列化操作
private transient String email; @Override
public String toString() {
return "User [userName=" + userName + ", passWord=" + passWord + ", email=" + email + "]";
} public User() {
super();
}
public User(String userName, String passWord, String email) {
super();
setUserName(userName);
setPassWord(passWord);
setEmail(email);
} public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
package com.monekey1025;
import java.io.FileInputStream;
import java.io.ObjectInputStream; public class TestObjectInputStream { public static void main(String[] args) { try{
//1.创建ObjectInputStream类型的对象与指定的文件关联
ObjectInputStream ois = new ObjectInputStream(
new FileInputStream("E:\\welcome.txt"));
//2.读取文件中的一个对象并打印出来
Object obj = ois.readObject();
if(obj instanceof User){
User user = (User)obj;
System.out.println(user);
}
//3.关闭流对象
ois.close();
}catch(Exception e){
e.printStackTrace();
} } }
import java.io.FileOutputStream;
import java.io.ObjectOutputStream; public class TestObjectOutputStream { public static void main(String[] args) { try{
//1.创建ObjectOutputStream类的对象与指定的文件关联
ObjectOutputStream oos = new ObjectOutputStream(
new FileOutputStream("c:/user.dat"));
//2.准备User类型的对象并进行初始化
User user = new User("Mark", "123456", "xiaomg@163.com");
//3.将User类型的对象整体写入到文件中
oos.writeObject(user);
System.out.println("写入对象成功!");
//4.关闭输出流对象
oos.flush();
oos.close();
}catch(Exception e){
e.printStackTrace();
} } }
ObjectIntputStream / ObjectOutputStream 类的更多相关文章
- serialVersionUID, ObjectInputStream与ObjectOutputStream类,Serializable接口,serialVersionUID的作用和用法
ObjectInputStream与ObjectOutputStream类所读写的对象必须实现Serializable接口,对象中的transient和static类型成员变量不会被读取和写入 Ser ...
- ObjectInputStream与ObjectOutputStream类实现对象的存取
1. ObjectInputStream与ObjectOutputStream类所读写的对象必须实现Serializable接口,对象中的transient和static类型成员变量不会被读取和写入 ...
- Java 之 ObjectOutputStream 类
ObjectOutputStream 类 1.概述 java.io.ObjectOutputStream extends OutputStream ObjectOutputStream:对象的序列化流 ...
- ObjectOutputStream和ObjectInputStream
官方解释: ObjectOutputStream 将 Java 对象的基本数据类型和图形写入 OutputStream.可以使用 ObjectInputStream 读取(重构)对象.通过使用流中的文 ...
- 黑马程序员——【Java基础】——File类、Properties集合、IO包中的其他类
---------- android培训.java培训.期待与您交流! ---------- 一.File类 (一)概述 1.File类:文件和目录路径名的抽象表现形式 2.作用: (1)用来将文件或 ...
- 序列化、反序列化(实体类或要序列化的对象类必须实现Serializable接口)
package com.phone.shuyinghengxie; import java.io.Serializable; /* 一个类的对象要想序列化成功,必须满足两个条件: 该类必须实现 jav ...
- ObjectOutputStream 追加写入读取错误
摘自http://blog.csdn.net/mitkey/article/details/50274543 问题描述: 用类ObjectOutputStream向文件写读对象时,碰到一个问题:新建一 ...
- ObjectOutputStream 和 ObjectInputStream的使用
一.看一下API文档 ObjectOutputStream : ObjectOutputStream 将 Java 对象的基本数据类型和图形写入 OutputStream.可以使用 ObjectInp ...
- Java-IO之对象输入流输出流(ObjectInputStream和ObjectOutputStream)
ObjectInputStream和ObjectOutputStream的作用是对基本数据和对象进行序列化操作支持.创建文件输出流对应的ObjectOutputStream对象,该ObjectOutp ...
随机推荐
- 在当前目录打开DOS命令行窗口
[step1]选中文件夹 [step2]shift + 鼠标右键
- ES6之主要知识点(四)数值
引自:http://es6.ruanyifeng.com/#docs/number 1.Number.isFinite(),Number.isNaN() Number.isFinite(); // t ...
- sas正则式之prxparen
sas正则式之prxparen 今天还是要继续正则式的内容,这周的内容是prxparen函数,这个函数我个人觉得特别有用,是因为他和"|"结合使用可以同时容纳很多种情况的字符串. ...
- MYSQL中使用事务的案例
基本介绍 事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml语句要么全部成功,要么全部失败.如:网上转账就是典型的要用事务来处理,用以保证数据的一致性. 关键词 start tran ...
- 关于python的列表操作(一):取值,增加,修改,删除
# 列表操作 name_list = ["wang", "niu", "bai", "sui"] # 取值 print( ...
- springboot使用@Aspect实现AOP记录日志讲解
AOPAOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.在日常开发当中经常用来记录日志,方法跟踪 ...
- 2019-5-25-如何在-CMD-启动的软件传入带空格的路径
title author date CreateTime categories 如何在 CMD 启动的软件传入带空格的路径 lindexi 2019-05-25 09:31:46 +0800 2019 ...
- Leetcode86. Partition List分隔链表(双指针)
给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前. 你应当保留两个分区中每个节点的初始相对位置. 示例: 输入: head = 1->4-&g ...
- 跟我一起了解koa(四)
我们使用第二讲中的路由页面,再结合ejs,一起了解ejs在koa中的应用 1.安装koa-views和ejs cnpm install --save koa cnpm install koa-rout ...
- Linux驱动手动绑定和解绑定方法
linux内核从2.6.13-rc3开始,提供了在用户空间,可动态的绑定和解绑定设备和设备驱动之间关系的功能.在这之前,只能通过insmod(modprobe)和rmmod来绑定和解绑,而且这种绑定和 ...