我在android上使用SharedPreference来存储一组字符串.根据我的知识存储和检索它,但是当重新启动应用程序时,一些数据会丢失.字符串是逐个添加的,在添加它之前我检索集合,添加字符串然后再次存储它.

这是我存储它的方式:

Set emptySet = null;

SharedPreferences prefs = getContext().getSharedPreferences(getContext().getString(R.string.pref_disagree_key), Activity.MODE_PRIVATE);

String newIdAgreed = getItem(position).getId();

if (prefs.contains(getContext().getString(R.string.pref_disagree_key))) {

Set updateSet = prefs.getStringSet(getContext().getString(R.string.pref_disagree_key), emptySet);

updateSet.add(newIdAgreed);

SharedPreferences.Editor editor = prefs.edit();

editor.putStringSet(getContext().getString(R.string.pref_disagree_key), updateSet);

editor.commit();

} else {

Set newSet = new HashSet();

newSet.add(newIdAgreed);

SharedPreferences.Editor editor = prefs.edit();

editor.putStringSet(getContext().getString(R.string.pref_disagree_key), newSet);

editor.commit();

}

这就是我得到它的方式:

if (prefsDisagree.contains(getContext().getString(R.string.pref_disagree_key))){

disagree_set = new HashSet(prefsDisagree.getStringSet(getContext().getString(R.string.pref_disagree_key), emptySet));

for (String item: disagree_set){

//stuff done here

}

}

我看到了一些关于这个主题的类似问题,但没有一个答案解决了我的问题.有任何想法吗?

解决方法:

当您尝试在保存后再次编辑它时,StringSet不是持久的,因此当您退出应用程序并再次打开它时,刚添加的新数据将不会被保存.

您需要先复制StringSet,然后将数据插入/添加到复制的StringSet:

Set s = new HashSet

getContext().getString(R.string.pref_disagree_key),

emptySet));

标签:java,android,sharedpreferences,set

来源: https://codeday.me/bug/20190519/1135780.html

java应用重启导致数据丢失_java – 在重新启动应用程序后从SharedPreferences恢复时设置丢失数据...相关推荐

  1. java quartz 重启不了_java – 重新启动quartz调度程序而不会出现错误

    上下文 我正在尝试使用jdbc在集群模式下使用quartz调度程序. 问题 在我开始使用集群模式的jdbc之前,我刚刚通过RAM存储测试了调度程序.这没有问题,我能够重启调度程序(主类),没有任何错误 ...

  2. java上传ftp数据丢失_Java:将文件上传到FTP问题(数据包丢失) - java

    我正在尝试将文件从Java应用程序传输到FTP服务器 该程序可以正常工作,文件已传输,但是当我在FTO文件夹中打开文件时,文件已损坏,我认为在文件传输过程中数据包丢失了.为什么?我该如何解决? 另一个 ...

  3. java jsp中的日历表_JAVA简单的日历程序

    JAVA简单的日历程序 作者:未知    文章来源:www.jspcn.net 发布日期:2005年01月19日 /**以下是日历的代码程序 有疑问 回信 ycj@18e.net **/ //Cale ...

  4. java打印6个偶数_Java编写一个应用程序,打印所有偶数从2到100

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 public static void main(String[] args) throws IOException { File file=new Fil ...

  5. java图书管理系统技术难度_Java图书管理系统练习程序(一)

    Java图书管理系统练习程序 第一部分 该部分主要实现命令行方式的界面与无数据库访问的练习,通过本练习.主要掌握Java的基础知识与面向对象程序设计思想.面向接口编程技术的知识与运用. 一.练习程序功 ...

  6. java读取合并单元格_Java POI常用方法,读取单元格的值,设置单元格格式,合并单元格,获取已合并的单元格,导出至本地等...

    一.设置单元格格式. 设置单元格边框.单元格背景颜色.单元格对齐方式.单元格字体,设置自动换行. /** Description: 设置单元格格式. * @author : ys. * @date : ...

  7. java百度天气接口解析_Java调用天气接口(百度天气)解析返回的JSON数据

    简介:本文详细讲述了通过Java调用百度天气接口的方法,取得返回的JSON格式的数据,并且通过第三方包解析JSON格式的数据. 通过百度天气API调用网络编程接口接收返回的JSON格式的数据. 关于百 ...

  8. java调用c传参_JAVA 调用C 语言程序,并且进行传参收结果等操作

    import java.io.*; import java.lang.*; class test3{ public static void main(String []args) throws IOE ...

  9. java swing 禁用鼠标事件_Java学习笔记:swing中树控件,设置树节点的图标,按钮美化,鼠标事件,禁止鼠标双击...

    树控件: JTree:声明树控件 声明树的节点: DefaultMutableTreeNode dd=new DefaultMutableTreeNode("传入树节点名称"); ...

最新文章

  1. 7 环境变量 立即生效_不服已经生效的刑事判决书该怎么办?刑事案件如何执行?...
  2. 硬盘安装linux_Surface-Laptop3 安装Archlinux折腾小记
  3. java与html关联_HTML页和ashx页之间的关联
  4. sql XML处理,sp_xml_preparedocument,openxml
  5. python办公自动化案例-用python进行办公自动化都需要学习什么知识呢?
  6. centos7yum安装VirtualBox
  7. nginx 没有cookie_nginx实现负载均衡的原理及策略
  8. cad添加自己线性_如何在CAD中添加自行创建的线型
  9. php图片大马加后门,一次对php大马的后门的简单分析
  10. 软件工程基础知识--需求分析
  11. 【矩阵运算】矩阵的迹以及迹对矩阵求导总结
  12. snipaste滚动截图方法_windows史上最强截图工具 ,有它就够了
  13. 如何将png格式的图片缩小?png怎么缩小kb?
  14. Ubuntu18.04 同一个程序显示两个图标,收藏夹图标不合并问题解决
  15. 03 ,似然函数求解 :目标函数推导,对数似然求解,最小二乘法
  16. Vue style里面使用scoped属性并@import引入外部css, 作用域是全局的解决方案
  17. Cesium之鼠标事件绑定和移除
  18. 视觉显著性 matlab,转载图像/视觉显著性检测技术发展情况梳理(Saliency Detection、Visual Attention)...
  19. 逆天了word 90后:情人节巧用小小技术就俘获了女神
  20. MFC 更换图标文件但EXE图标没改变

热门文章

  1. centos安装android应用程序,centos7软件安装系列【二十一】安装android打包环境
  2. systemctl 命令完全指南
  3. 【已解决】如何判断处理器是大端,或小端?
  4. 排序算法 之四 分类、时间/空间复杂度、如何选择
  5. mysql8.0.20忘记密码_mysql8.0.19忘记密码的完美解决方法
  6. CMake 中的 PUBLIC,PRIVATE,INTERFACE
  7. VMware / 三种联网方法及原理
  8. Linux / 守护进程
  9. C语言在main中输入2个整数ab,2014年计算机等级二级C语言程序设计习题
  10. 水利水电工程管理与实务电子版习题_水利水电工程管理与实务复习题集