以下是我用来保存和加载缓存的函数:
public static void SAVE_CACHE(Context context, String key, Object object) throws IOException {
FileOutputStream fos = context.openFileOutput(key, Context.MODE_PRIVATE);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(object);
oos.close();
fos.close();
}
public static Object LOAD_CACHE(Context context, String key) throws IOException,
ClassNotFoundException {
FileInputStream fis = context.openFileInput(key);
ObjectInputStream ois = new ObjectInputStream(fis);
Object object = ois.readObject();
return object;
}
假设我在缓存中保存了3个对象Contact
的arraylists:
List<Contact> contacts = new ArrayList<Contact>();
contacts.add(new Contact());
SAVE_CACHE(context, "cache1", contacts);
SAVE_CACHE(context, "cache2", contacts);
SAVE_CACHE(context, "cache3", contacts);
是否可以获取哪些缓存键包含对象?我想要一个cache1,cache2和cache2的arraylist。