📄 propertiesutil.java
字号:
import java.io.File;
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.util.Vector;
import javax.swing.JOptionPane;
public class PropertiesUtil {
private Vector<User> vectUsers;
public PropertiesUtil(String fileName){
vectUsers = new Vector<User>();
}
@SuppressWarnings("unchecked")//忽略错误(给编译器一条指令
//告诉它对被批注的代码元素内部的某些警告保持静默)
//"unchecked"-----执行了未检查的转换时的警告
public Vector<User> getUsers(){
try {
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("config/telephone.dat"));
vectUsers = (Vector<User>)ois.readObject();
ois.close();
}catch(FileNotFoundException e){
initRecord();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return vectUsers;
}
public void save(User user){
try {
ObjectOutputStream oos = new ObjectOutputStream(
new FileOutputStream("config/telephone.dat"));
int i;
for( i = 0;i < vectUsers.size();i++){
if(user.getNo() == vectUsers.get(i).getNo()){
vectUsers.set(i, user);//修改
break;
}
}
if(i >= vectUsers.size()){
vectUsers.add(user);//新增
}
oos.writeObject(vectUsers);
oos.flush();
oos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 若记录文件不存在,则初始化记录文件
*/
private void initRecord(){
//创建文件
File f = new File("config/telephone.dat");
try {
f.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
//新建一条记录
User u = new User();
u.setNo(1);
u.setName("输入用户名");
u.setCategory("请选择类别");
u.setSex("M");
u.setPhone("请输入电话号码");
u.setImagePath("输入图片路径");
try {
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("config/telephone.dat"));
vectUsers.add(u);
oos.writeObject(vectUsers);
oos.close();
JOptionPane.showMessageDialog(null, "请重启本程序");
System.exit(0);
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}
public void delete(int index) {
try {
ObjectOutputStream oos = new ObjectOutputStream(
new FileOutputStream("config/telephone.dat"));
vectUsers.remove(index);
oos.writeObject(vectUsers);
oos.flush();
oos.close();
}catch (IOException e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -