ObjectInputStream and ObjectOutputStream

kainever 2015-03-20 02:48:19
我通过ObjectOutputStream 写入对象到文件,对象已是实现Serializable接口
接下来,在这个程序运行时,我可以通过ObjectInputStream 读到对象,可以如果
我关闭程序,再重新开启程序,就读不到对象,保EOFException ,可是文件中明明已经
存在对象了,不知道是哪个细节没有注意到,各位帮帮忙,谢谢
...全文
79 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
小白晒太阳 2015-03-20
  • 打赏
  • 举报
回复
估计是第一次读取对象是文件流没有关闭的原因
highnewrain 2015-03-20
  • 打赏
  • 举报
回复
给个示例你参考下,按照你的操作,没问题!
import java.io.*;
public class Test {

	/**
	 * @param args
	 * @throws IOException 
	 * @throws FileNotFoundException 
	 * @throws ClassNotFoundException 
	 */
	public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException {
		// TODO Auto-generated method stub
		Man man=new Man("Kobe",28);
		ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream(new File("D:/Man.txt")) );
		out.writeObject(man);
		out.close();
		ObjectInputStream in=new ObjectInputStream(new FileInputStream(new File("D:/Man.txt")) );
		man=(Man)in.readObject();
		in.close();
		System.out.println(man);
	}

}

class Man implements Serializable
{
	public Man(String name,int age)
	{
		this.name=name;
		this.age=age;
	}
	private int age;
	private String name="";
	
	@Override
	public String toString() {
		return "Man [age=" + age + ", name=" + name + "]";
	}
}

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧