Java对象流实例代码

将日期对象和向量对象写入文件,然后从文件中读出并输出到屏幕上

package objstream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.Date;
import java.util.Vector;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.scene.chart.PieChart.Data;
/**
 *
 * @author Administrator
 */
public class ObjStream {
	/**
   * @param args the command line arguments
   */
	public static void main(String[] args) throws IOException {
		try {
			//这2句与FileOutputStream fout = new FileOutputStream("test.txt");
			//是等价的
			FileOutputStream fout = null;
			File f = new File("test.txt");
			Vector v = new Vector();
			//Vector变量
			v.add("不求有功");
			v.add("才华出众");
			v.add("瞬息万变");
			fout = new FileOutputStream(f);
			ObjectOutputStream Obj = new ObjectOutputStream(fout);
			Object Oj = new Object();
			Oj = new Date();
			Obj.writeObject(Oj);
			Obj.writeObject(v);
			Obj.close();
			FileInputStream Fin = new FileInputStream(f);
			ObjectInputStream Ois = new ObjectInputStream(Fin);
			Object Oji = new Object();
			//这里为什么要用2个OBJECT来输出求指教
			Oji = Ois.readObject();
			//不用2个的话只输出时间
			System.out.println(Oji);
			Object Oji2 = new Object();
			Oji2 = Ois.readObject();
			System.out.println(Oji2);
		}
		catch (FileNotFoundException ex) {
			Logger.getLogger(ObjStream.class.getName()).log(Level.SEVERE, null, ex);
		}
		catch (ClassNotFoundException ex) {
			Logger.getLogger(ObjStream.class.getName()).log(Level.SEVERE, null, ex);
		}
	}
}

对象输入流)可读取使用对象输出流写入的原始数据和类型,与文件输入输出流一起可以实现对象的持久性存储。

结果:
Fri Jul 24 11:28:01 CST 2015
[不求有功, 才华出众, 瞬息万变]
成功构建 (总时间: 2 秒)

但是test.txt文件里是乱码~~怎么破??

总结

以上就是本文关于Java对象流实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

(0)

相关推荐

  • java 流操作对文件的分割和合并的实例详解

    java 流操作对文件的分割和合并的实例详解 学习文件的输入输出流,自己做一个小的示例,对文件进行分割和合并. 下面是代码: package com.dufy.file; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.SequenceInputStream; import java.ut

  • Java中的对象流总结(必看篇)

    Java中可以通过对象流将一个序列化的对象保存到硬盘中,或者硬盘中读取一个对象.对象流的存储和读取包含以下几点内容: 1.所保存的对象必须实现Serializable接口. 2. 所保存的对象的属性也必须实现Serializable接口. 3. 最好要给该对象提供一个版本号,private static final long serialVersionId. 下面是一个对象流存储和读取一个对象的流程图: class Person implements Serializable { //实现序列化

  • Java对象流实例代码

    将日期对象和向量对象写入文件,然后从文件中读出并输出到屏幕上 package objstream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io

  • Java回调函数实例代码详解

    首先说说什么叫回调函数? 在WINDOWS中,程序员想让系统DLL调用自己编写的一个方法,于是利用DLL当中回调函数(CALLBACK)的接口来编写程序,使它调用,这个就 称为回调.在调用接口时,需要严格的按照定义的参数和方法调用,并且需要处理函数的异步,否则会导致程序的崩溃. 这样的解释似乎还是比较难懂,这里举个简 单的例子: 程序员A写了一段程序(程序a),其中预留有回调函数接口,并封装好了该程序.程序员B要让a调用自己的程序b中的一个方法,于是,他通过a中的接口回调自己b中的方法.目的达到

  • java图片添加水印实例代码分享

    本文为大家介绍了java图片添加水印实例代码,java实现水印还是非常方便的,水印可以是图片或者文字,具体内容如下 package michael.io.image; import java.awt.AlphaComposite; import java.awt.Graphics2D; import java.awt.Image; import java.awt.RenderingHints; import java.awt.image.BufferedImage; import java.io

  • json-lib将json格式的字符串,转化为java对象的实例

    json格式字符串中的日期是按照'yyyy-MM-dd HH:mm:ss'格式,如果按照常规的转换为对象,该日期则解析成当前系统时间 JSONObject json = JSONObject.fromObject(data); Dispatchplan dp = (Dispatchplan)JSONObject.toBean(json, Dispatchplan.class); 导致原因JSONObject可能无法识别日期格式,做了以下修改就解决 Dispatchplan dp = new Di

  • Mybatis和orcale update语句中接收参数为对象的实例代码

    Mybatis的 mapper.xml 中 update 语句使用 if 标签判断对像属性是否为空值. UserDTO是传过来参数的类型,userDTO是在mapperDao接口中给更新方法的参数起的别名. mapperDao.java int updata(@Param("userDTO") UserDTO userDTO); mapper.xml <update id="updata" parameterType="UserDTO"&g

  • Java反射机制实例代码分享

    本文旨在对Java反射机制有一个全面的介绍,希望通过本文,大家会对Java反射的相关内容有一个全面的了解. 阅读本文之前,大家可先行参阅<重新理解Java泛型>. 前言 Java反射机制是一个非常强大的功能,在很多大型项目比如Spring, Mybatis都可以看见反射的身影.通过反射机制我们可以在运行期间获取对象的类型信息,利用这一特性我们可以实现工厂模式和代理模式等设计模式,同时也可以解决Java泛型擦除等令人苦恼的问题.本文我们就从实际应用的角度出发,来应用一下Java的反射机制. 反射

  • JAVA验证码工具实例代码

    工具类: package com.lhy.web.servlet; import java.awt.BasicStroke; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.FileNotFoundException; import java.io.FileOutputStream; import

  • 将List集合中的map对象转为List<对象>形式实例代码

    本文实例主要实现将List集合中的map对象转为List<对象>形式,下面是完整代码: import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import org.apache.commons.beanutils.ConvertUtils; import org.apache.commons.bea

  • Java编程Nashorn实例代码

    本文研究的主要是Java编程Nashorn的相关内容,具体如下. Nashorn是什么 Nashorn,发音"nass-horn",是德国二战时一个坦克的命名,同时也是java8新一代的javascript引擎--替代老旧,缓慢的Rhino,符合 ECMAScript-262 5.1 版语言规范.你可能想javascript是运行在web浏览器,提供对html各种dom操作,但是Nashorn不支持浏览器DOM的对象.这个需要注意的一个点. 之前学习Java8的时候恰好写了个简单的例子

  • Java对象初始化过程代码块和构造器的调用顺序

    目录 前言 代码加载的优先级顺序 构造方法的执行顺序 各种代码块的定义 静态代码块 有关静态代码块再详细介绍下 局部代码块 验证各代码块的执行顺序 验证存在继承关系中各代码块的执行顺序 通过字节码深究实例代码块优先于构造器原因 前言 对Java对象初始化过程 代码块与构造器调用顺序进行整理说明.先说结论具体论证在下文. 代码加载的优先级顺序 静态代码块.静态成员变量->非静态代码块.非静态成员变量->new其他对象调用对应对象构造方法(在本地对象的方法外包括构造方法)->new本地对象调

随机推荐