微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将Hashmap转换为String以保存在SQLite数据库中?

我需要找到一种方法来将HashMap保存为字符串以保存在我的sqlite数据库中以便在以后的阶段进行检索.

这是我的HashMap:

private Map<String, Bitmap> myMarkersHash new HashMap<String, Bitmap>();

然后保存到sqlite数据库时:

contentValues.put(LocationsDB.FIELD_HASH, myMarkersHash);

但问题是我在contentValues.put下输入错误时出现此错误

The method put(String, String) in the type ContentValues is not applicable for the arguments (String, Map<String,Bitmap>)

所以我的问题是如何将其转换为字符串,以便我可以将其保存到我的sqlite数据库

谢谢

解决方法:

您可以使用Gson库将HashMap转换为String,从而将HashMap存储在数据库中.
该库将您的对象转换为String,您可以随时获取该对象.
链接到下载Lib:https://code.google.com/p/google-gson/

将对象转换为字符串:

Gson objGson= new Gson();
String strObject = objGson.toJson(myMarkersHash);
Bundle bundle = new Bundle();
bundle.putString("key", strObject);

将String转换为Object:

Gson gson = new Gson();
Type type = new Typetoken<Model>() {}.getType();
myMarkersHash = gson.fromJson(bundle.getString("key"), type);

也请查看此示例:http://www.java2blog.com/2013/11/gson-example-read-and-write-json.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐