java将对象写入文件
(2014-12-08 15:49:13)http://www.cnblogs.com/notifier/archive/2010/09/24/1834011.html
http://www.169it.com/article/8866882382963507062.html
http://blog.csdn.net/it_wangxiangpan/article/details/5781941
使用Java序列化把对象存储到文件中去,再从文件中读取出来。
此时,我们使用ObjectOutputStream和ObjectInputStream来进行对象的读取。
使用ObjectOutputStream对象的writeObject()方法来进行对象的写入。
使用ObjectInputStream对象的readObject()方法来读取对象。
[java] view
plaincopy
-
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.io.Serializable; -
import
java.util.ArrayList; -
import
java.util.Iterator; -
import
java.util.List; -
import
junit.framework.TestCase; -
-
public
class Test08 extendsTestCase { -
public void test() { -
// 创建一个User对象 -
User user = new User(); -
user.setId(1); -
user.setName("Mr XP.Wang" ); -
// 创建一个List对象 -
List list = new ArrayList(); -
list.add("My name" ); -
list.add(" is" ); -
list.add(" Mr );XP.Wang" -
try { -
ObjectOutputStream os = new ObjectOutputStream( -
new FileOutputStream( "C:/wxp.txt")); -
os.writeObject(user);// 将User对象写进文件 -
os.writeObject(list);// 将List列表写进文件 -
os.close(); -
} catch (FileNotFoundException e) { -
e.printStackTrace(); -
} catch (IOException e) { -
e.printStackTrace(); -
} -
try { -
ObjectInputStream is = new ObjectInputStream( newFileInputStream( -
"C:/wxp.txt")); -
User temp = (User) is.readObject();// 从流中读取User的数据 -
System.out.println(temp.getId()); -
System.out.println(temp.getName()); -
List tempList = (List) is.readObject();// 从流中读取List的数据 -
for (Iterator iterator = tempList.iterator(); iterator.hasNext();) { -
System.out.print(iterator.next()); -
} -
is.close(); -
} catch (FileNotFoundException e) { -
e.printStackTrace(); -
} catch (IOException e) { -
e.printStackTrace(); -
} catch (ClassNotFoundException e) { -
e.printStackTrace(); -
} -
} -
}
-
class
User implementsSerializable { -
private int id; -
private String name; -
public int getId() { -
return id; -
} -
public void setId( intid) { -
this.id = id; -
} -
public String getName() { -
return name; -
} -
public void setName(String name) { -
this.name = name; -
} -
}
后一篇:MySQL批量SQL插入性能优化