Java中关于存储对象流的代码

第一次见到芳神用对象流来存储已经执行过的信息,感觉这样的操作真的很神奇,通过对象流可以实现动态对象的保存。

例如 扫雷程序执行到了一半,你突然不想扫雷了,然后将此对象JPanel对象(既扫雷面板)用对象流存储到文件后,然后你还可以用对象流来进行读入操作。

在实现扫雷的过程中突然发现自己实现对象流中读取的操作后,然后面板就没有响应了,考虑到要开发局域网对战的功能就打算把保存进度这一模块给删掉。

但是实现的代码就放到这里了。


import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

上面是要包含的类

		if(e.getSource().equals(win.menuBar.backUp)){    //保存框的响应
			File file=new File("save.txt");
			try{
				if(file.exists()==false)file.createNewFile();
				else {file.delete();file.createNewFile();}
				FileOutputStream fileOut=new FileOutputStream(file);
				ObjectOutputStream out=new ObjectOutputStream(fileOut);
			    out.writeObject(win.mainArea);
			    out.close();
			}
			catch(Exception ss){
				System.out.println(ss.toString());
				JOptionPane.showMessageDialog(win, "保存出错","警告框",JOptionPane.WARNING_MESSAGE);
			}
		}
		
		if(e.getSource().equals(win.menuBar.recover)){   //读取框的响应
			File file=new File("save.txt");
			try{
				if(file.exists()==false)throw new Exception();
				FileInputStream fileIn=new FileInputStream(file);
				ObjectInputStream in=new ObjectInputStream(fileIn);
				win.setMenuArea((MenuArea)in.readObject());
				in.close();
				
			}
			catch(Exception ss){
				JOptionPane.showMessageDialog(win, "读取出错","警告框",JOptionPane.WARNING_MESSAGE);
			}
			
		}

作不能恰当是融合时间计数的功能(又重新开了一个进程来执行的操作),结果读取存档后不能进行正常的响应操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值