eferences loginUserInfo = EdjApp.getInstance(). getSharedPreferences(per_name, Context.MODE_APPEND); Map maps = loginUserInfo.getAll();//取出所有数据 List oblist = new ArrayList(); Iterator it = maps.values().iterator(); while(it.hasNext()){ String base64Str = (String) it.next(); byte[] base64Bytes = Base64.decodeBase64(base64Str .getBytes()); ByteArrayInputStream bais = new ByteArrayInputStream(base64Bytes); ObjectInputStream ois; try { ois = new ObjectInputStream(bais); T tempobj = (T) ois.readObject(); oblist.add(tempobj); // LoginUser loginUser = (LoginUser)tempobj; } catch (StreamCorruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } ArrayListtempserviceInfo = new ArrayList(); tempserviceInfo.addAll((Collection< extends ServiceInfo>) oblist); Comparator ascComparator = new ServiceInfoComparator(); Collections.sort(tempserviceInfo, ascComparator); oblist.clear(); oblist.addAll((Collection< extends T>) tempserviceInfo); return oblist; } /** * 删除单条对象数据 * @param per_name * @param key */ public static void removeObjectPre(String per_name,String key){ SharedPreferences loginUserInfo = EdjApp.getInstance(). getSharedPreferences(per_name, Context.MODE_APPEND); Editor preEd = null; if(loginUserInfo != null){ preEd = loginUserInfo.edit(); } preEd.remove(key); preEd.commit(); } //当前时间为id public static long getTimeId() { Date data = new Date(); long time=data.getTime(); return time; } //--------------------------- /** * 储存单条对象 * @param per_name * @param key * @param vaule */ public static void saveObjectPre(String per_name,String key,Object vaule){ SharedPreferences loginUserInfo = EdjApp.getInstance(). getSharedPreferences(per_name, Context.MODE_APPEND); Editor preEd = null; if(loginUserInfo != null){ preEd = loginUserInfo.edit(); } if(preEd != null){ if(vaule != null){ ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos=null; try { oos = new ObjectOutputStream(baos); oos.writeObject(vaule); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } String info = new String(Base64.encodeBase64(baos.toByteArray())); preEd.putString(key, info); } preEd.commit(); } } /** * 读取对象集合 * @param per_name * @param oblist */ public static List readAllObjectPre(String per_name){ SharedPreferences loginUserInfo = EdjApp.getInstance(). getSharedPreferences(per_name, Context.MODE_APPEND); Map maps = loginUserInfo.getAll();//取出所有数据 List oblist = new ArrayList(); Iterator it = maps.values().iterator(); while(it.hasNext()){ String base64Str = (String) it.next(); byte[] base64Bytes = Base64.decodeBase64(base64Str .getBytes()); ByteArrayInputStream bais = new ByteArrayInputStream(base64Bytes); ObjectInputStream ois; try { ois = new ObjectInputStream(bais); T tempobj = (T) ois.readObject(); oblist.add(tempobj); } catch (StreamCorruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-gener |