从自己的msn空间移动过来的..
一个简单不能在简单的例子
package dev.bean;
import java.beans.XMLEncoder;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.*;
import java.beans.XMLDecoder;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.*;
import java.beans.XMLDecoder;
public class beanToFile {
public static void main(String[] args) {
beanToFile.wirteObjectFile("d:\\1.xml");
beanToFile.readObjectFile("d:\\1.xml");
}
/**
public static void main(String[] args) {
beanToFile.wirteObjectFile("d:\\1.xml");
beanToFile.readObjectFile("d:\\1.xml");
}
/**
** 把一个对象记录到xml文件中
**/
public static void wirteObjectFile(String filename){
try {
Goo g = new Goo();
g.setId("111");
g.setName("2222");
XMLEncoder encoder = new XMLEncoder(new BufferedOutputStream( ( (
OutputStream) (new FileOutputStream(filename)))));
encoder.setPersistenceDelegate(Goo.class, new GooDefaultPersistenceDelegate());
encoder.writeObject(g);
encoder.close();
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
/**
public static void wirteObjectFile(String filename){
try {
Goo g = new Goo();
g.setId("111");
g.setName("2222");
XMLEncoder encoder = new XMLEncoder(new BufferedOutputStream( ( (
OutputStream) (new FileOutputStream(filename)))));
encoder.setPersistenceDelegate(Goo.class, new GooDefaultPersistenceDelegate());
encoder.writeObject(g);
encoder.close();
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
/**
**从一个xml文件中读取出对象
**/
public static Object readObjectFile(String filename){
Object obj = null;
try {
XMLDecoder decoder = new XMLDecoder(new BufferedInputStream( ( (
InputStream) (new FileInputStream(filename)))));
obj = decoder.readObject();
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
return obj;
}
public static Object readObjectFile(String filename){
Object obj = null;
try {
XMLDecoder decoder = new XMLDecoder(new BufferedInputStream( ( (
InputStream) (new FileInputStream(filename)))));
obj = decoder.readObject();
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
return obj;
}
}
其中的GooDefaultPersistenceDelegate 是继承了DefaultPersistenceDelegate,在继承的方法里面的可以写上很多自己的方法,这个例子的GooDefaultPersistenceDelegate 并没有重写任何方法
有时间再修改一下