我需要从表中取出大约100行,并将它们放入共享首选项中,然后删除数据库,安装一个新的并比较值。
我只需要从每行存储2个值。列A和列B,但我不知道这是否可能?
谢谢你的帮助
你不能存储一个表,但是如果你的表真的是那么简单(或者即使它不是…我认为你可以存储尽可能多的数据,你可以将其传输到JSON对象,将其字符串化并存储。然后,当您准备再次使用它时,将其打包回JSON并重新放入新表中。
我还可以建议使用泛型库来抽象本地存储。这里有一个例子:
使用android lib: https://github.com/wareninja/generic-store-for-android
import com.wareninja.opensource.genericstore.GenericStore;
// step.1: transfer data fromt able into GenericStore (aka cache)
String objKey = "mytable01";
int storeType = GenericStore.TYPE_SHAREDPREF;
//keep in mind that you can also use GenericStore.TYPE_MEMDISKCACHE
// which will store on disk cache, which can be faster and better for memory allocation
LinkedHashMap<String, Object> dataMap = new LinkedHashMap<String, Object>();
// fill in all the data from you table, e.g.
dataMap.put("row1", "val1");
GenericStore.saveObject(storeType, objKey, dataMap, mContext);
// now everything is on stored/cached
// step.2: get data back
dataMap = (LinkedHashMap<String, Object>) GenericStore.getObject(storeType, objKey, mContext);
…
社交编码@ Aspiro TV