写对象,比如自定类为MyObject: MyObject obj = new MyObject(); obj.rectangle = new Rectangle(0,0,10,10); ObjectOutputStream out = new ObjectOutputStream( new BufferedOutputStream( new FileOutputStream(outFile))); out.writeObject(obj); out.close(); 读对象: ObjectInputStream in = new ObjectInputStream(new BufferedInputStream( new FileInputStream(inFile))); MyObject obj = (MyObject) in.readObject();
to: bs221cn() 我试了一下, 自己建了一个类MyResult同时实现了ResultSet和Serializable接口, 在得到ResultSet后,向我的类做强制类型转换时会发生异常。 to:opencsdn(虚心求教) 我只找到了向xml文件中写字符串的方法。 Element name = doc.createElement("姓名"); student.appendChild(name); Text tName = doc.createTextNode("张三"); name.appendChild(tName); 我只找到了类似于这样的方法。 你能不能介绍几个能写进去对象的方法。最好能有段代码,看看!!
XMLEncoder e = new XMLEncoder( new BufferedOutputStream( new FileOutputStream("Test.xml"))); e.writeObject(new JButton("Hello, world")); e.close(); -------------------------------- XMLDecoder d = new XMLDecoder( new BufferedInputStream( new FileInputStream("Test.xml"))); Object result = d.readObject(); d.close();
--------------------------------java.beans Class XMLDecoder java.lang.Object java.beans.XMLDecoder --------------------------------java.beans Class XMLEncoder java.lang.Object java.beans.Encoder java.beans.XMLEncoder
如:class Bean{ int i;int j}
则保存可以这样:void writeData(Bean bean,PrintWriter out){out.write(bean.i+"!"+bean.j)};
读出来时根据|划分字段
自定义一个类,实现Serializable接口,把要保存的对象作为它的一个成员。重写自定义类的:
WriteObject和ReadObject,如保存一个Rectangle:
private void writeObject(ObjectOutputStream out) throws IOException {
out.writeDouble(rectangle.width);
out.writeDouble(rectangle.height);
}
private void readObject(ObjectInputStream in)
throws IOException, ClassNotFoundException {
double width = in.readDouble();
double height = in.readDouble();
rectangle = new Rectangle2D.Double(0,0,width,height);
}
MyObject obj = new MyObject();
obj.rectangle = new Rectangle(0,0,10,10);
ObjectOutputStream out = new ObjectOutputStream(
new BufferedOutputStream(
new FileOutputStream(outFile)));
out.writeObject(obj);
out.close();
读对象:
ObjectInputStream in = new ObjectInputStream(new BufferedInputStream(
new FileInputStream(inFile)));
MyObject obj = (MyObject) in.readObject();
能不能介绍一下用xml来保存object的方法呀,最好能有个例子
<field-type>int</field-type>
<field-value>111</--------->
并没有被序列化,你的对象要实现Serializable接口。可以继承java.sql.ResultSet
并实现Serializable接口
我试了一下,
自己建了一个类MyResult同时实现了ResultSet和Serializable接口,
在得到ResultSet后,向我的类做强制类型转换时会发生异常。
to:opencsdn(虚心求教)
我只找到了向xml文件中写字符串的方法。
Element name = doc.createElement("姓名");
student.appendChild(name);
Text tName = doc.createTextNode("张三");
name.appendChild(tName);
我只找到了类似于这样的方法。
你能不能介绍几个能写进去对象的方法。最好能有段代码,看看!!
new BufferedOutputStream(
new FileOutputStream("Test.xml")));
e.writeObject(new JButton("Hello, world"));
e.close();
--------------------------------
XMLDecoder d = new XMLDecoder(
new BufferedInputStream(
new FileInputStream("Test.xml")));
Object result = d.readObject();
d.close();
--------------------------------java.beans
Class XMLDecoder
java.lang.Object
java.beans.XMLDecoder
--------------------------------java.beans
Class XMLEncoder
java.lang.Object
java.beans.Encoder
java.beans.XMLEncoder
这类里定义一个容器,将要写入文件的类放入容器.
再把自建类写入文件.