class Info implements java.io.Serialable{这样你就可以直接用ObjectOutputStream来write这些Object了
解决方案 »
- 一个简单的图形打印题
- 利用Java基于TCP编写一个简单的Client/Server网络应用程序
- mysql的层次查询
- 如何点一个按钮 可以关闭Dialog而不关闭Dialog的父组件?
- 关于 包名冲突 的问题(非简单 class 重名)
- 时间,日期的排序问题
- 一个疑问:用java德有多少人关心过内存的使用情况,我发现java程序员只会new Object()没有人使用像c里面的析构函数。不明白,清高人指
- 怎么安装jdbc for sqlserver????
- 各位老大,how to convert Unicode code number to a character just like String.fromCharCode in jscript?
- java如何计算两个时间的差值,如何在两个时间之间相加,减?得到的值要求精确到秒!
- 这个程序总是报ExitableJFrame出错
- Eclipse中Class.forName()的问题
先new 一个FileWriter,然后取数组中的用户信息,用write()方法写入就行了。也可以用别的InputStream,看一下API就明白了。
implements java.io.Serialable 之后有报错"java.io.Serialable can not be resloved or is not a valid superinterface",偶是菜鸟,如何解决
写是写进去了,可怎么读出来啊?怎么判别文本里的分别保存的信息属于哪个用户?
不是要做数据库,也不用xml,只是想了解下java的数据结构和文件
public static void main(String args[]) { // Object serialization
try {
Info obj1 = new Info();
//System.out.println("[USER_INFO -> FILE]: " + obj1.getUserInfo());
FileOutputStream fos = new FileOutputStream("UserInfo");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(obj1);
oos.flush();
oos.close();
} catch(Exception e) {
System.out.println("Exception during serialization: " + e);
System.exit(0);
} // Object deserialization
try {
Info obj2;
FileInputStream fis = new FileInputStream("UserInfo");
ObjectInputStream ois = new ObjectInputStream(fis);
obj2 = (Info)ois.readObject();
ois.close();
//System.out.println("[FILE -> USER_INFO]: " + obj2.getUserInfo());
}catch(Exception e) {
System.out.println("Exception during deserialization: " + e);
System.exit(0);
}
}
}class Info implements Serializable{ private String m_name;
private int m_age;
private long m_salary;
private boolean m_ishandled;
Info() {
m_name = "undefined";
m_age = -1;
m_salary = 0;
m_ishandled = false;
}
public void setUserInfo(String name,int age,long salary,boolean ishandled) {
m_name = name;
m_age = age;
m_salary = salary;
m_ishandled = ishandled;
}
public String getUserInfo() {
return "USER_NAME = "+m_name+"; AGE = "+m_age+"; SALARY = "+m_salary+"; IS_HANDLED = "+m_ishandled;
}}