propertiesutil.java

来自「使用netbeans 开发的 java手机通讯录。 主要就是一般的手机通讯录的」· Java 代码 · 共 97 行

JAVA
97
字号
package com.lovo.addressbook;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.ArrayList;import java.util.List;import javax.swing.JOptionPane;public class PropertiesUtil {	private ObjectInputStream ois = null;	private ObjectOutputStream oos = null;	private List<User> lstUsers = new ArrayList<User>();	private String fileName = null;		public PropertiesUtil(String fileName){                    this.fileName = fileName; 	}		@SuppressWarnings("unchecked")	public  List<User> getUsers(){		try {			  ois = new ObjectInputStream(new FileInputStream(fileName));					  lstUsers =  (ArrayList<User>)ois.readObject();			  ois.close();		   }catch(FileNotFoundException e){			   intRecord();		  } catch (ClassNotFoundException e) {			e.printStackTrace();		  } catch (IOException e) {			e.printStackTrace();				  }		 return lstUsers;   }		public void save(User user){		try {			oos = new ObjectOutputStream(new FileOutputStream(fileName));			int i;			for( i = 0;i < lstUsers.size();i++){				if(user.getNo().equals(lstUsers.get(i).getNo())){					lstUsers.set(i, user);//修改					break;				}			}			if(i >= lstUsers.size()){			    lstUsers.add(user);//新增			}			oos.writeObject(lstUsers);			oos.flush();			oos.close();		} catch (IOException e) {			e.printStackTrace();		}	}		/**	 * 若记录文件不存在,则初始化记录文件	 */	private void intRecord(){		//创建文件		File f = new File(fileName);		try {			f.createNewFile();		} catch (IOException e1) {			e1.printStackTrace();		}		//新建一条记录		User u = new User();		u.setNo("1");		u.setName("输入用户名");		u.setAge(0);		u.setSex("M");		u.setPhone("请输入电话号码");		u.setImagePath("输入图片路径");		try {			oos = new ObjectOutputStream(new FileOutputStream(fileName));			lstUsers.add(u);			oos.writeObject(lstUsers);                        oos.flush();			oos.close();                        JOptionPane.showMessageDialog(null, "请重启本程序");                        System.exit(0);		} catch (FileNotFoundException e1) {			e1.printStackTrace();		} catch (IOException e1) {			e1.printStackTrace();		}	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?