我需要从表中获取大约100行并将它们放入共享的首选项中,然后删除数据库安装一个新的和比较值。
我只需要存储每行的2个值。 A栏和B栏,但我不知道这是否可能?
欢呼任何帮助。
答案 0 :(得分:0)
你不能存储一张桌子,但如果你的桌子真的那么简单(或者即使它不是......我认为你可以存储尽可能多的数据,真的),您可以将其转移到JSON对象,进行字符串化并存储。然后将它打包回JSON,并在您准备再次使用时将其打包到新表中。
答案 1 :(得分:0)
我还可以建议使用通用的lib来抽象本地存储。 这里有一个例子:
使用此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);