hchua 2021-05-05 00:08 采纳率: 50%
浏览 59
已采纳

请问SharedPreferences文件中每项是如何排列的?

有一个SharedPreferences的XML文件内容如下:

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
    <string name="三">3</string>
    <string name="四">4</string>
    <string name="九">9</string>
    <string name="七">7</string>
    <string name="一">1</string>
    <string name="八">8</string>
    <string name="二">2</string>
    <string name="五">5</string>
    <string name="六">6</string>
</map>

我是有按照一二三四这样的顺序一项一项map.put()加上去的.结果储存时就变成以上那样,而再读出来再赋值到activity后就就乱了。

请问该如何能让他按原来的顺序储存好?

  • 写回答

4条回答 默认 最新

  • 雪下的回忆 2021-05-06 11:16
    关注

    sharedpreference是哈希表的结构,内部数据的顺序由哈希函数和分配的内存决定。

     

    想要存储顺序的话你可以用key来代替顺序,取出之后排序就可以;也可以将对象序列化后存储,用的时候反序列化一下;再或者选用别的存储方式,比如数据库或者文件存储什么的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥100 需要跳转番茄畅听app的adb命令
  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥50 opencv4nodejs 如何安装
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument
  • ¥15 nginx反向代理获取ip,java获取真实ip
  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证