【发布时间】:2017-04-18 12:57:35
【问题描述】:
我有一个包含很多对象的 json 文件。该文件位于 res/raw 中。我正在阅读此文件并在我的 UI 中显示列表中的对象。并且在用户使用此列表关闭活动后,用户所做的最多更改将保存在已读取的文件中。
【问题讨论】:
我有一个包含很多对象的 json 文件。该文件位于 res/raw 中。我正在阅读此文件并在我的 UI 中显示列表中的对象。并且在用户使用此列表关闭活动后,用户所做的最多更改将保存在已读取的文件中。
【问题讨论】:
如果您的文件位于您的 apk 文件中,则无法更改它。取而代之的是,将标志存储在持久存储中。如果这是您的应用程序的第一次运行,则从 apk 中读取此 json 文件,对其进行处理并将其存储在设备文件系统中。
每次下一次运行,检查标志,如果不是第一次运行,从文件系统中读取文件并进一步处理。
【讨论】:
这是使事物静态化的坏方法,但如果对您来说太紧急,您可以读取一次 json 文件并将其转换为 java model(pojo) 对象并使该对象静态化,当您下次访问相同的活动时加载ui 从该静态对象而不是再次读取和解析它,为了安全起见,您可以检查 pojo 类对象是否为空。
【讨论】: