模型的JSON序列化

时间:2014-07-25 09:37:43

标签: java android json serialization

在我的应用程序中,我使用JSON保存所有模型。通过将我的所有变量放在JSONObject中,保存我的数据会将我的模型转换为JSONObject

public JSONObject toJSON() throws JSONException {
        JSONObject json = new JSONObject();
        json.put(JSON_ID, mId);
        json.put xxx
        ...

        return json;
}

然后使用Writer创建.json文件。

当我需要加载我的模型时,我只需调用它的构造函数,如:

public MyModel(JSONObject json) throws JSONException {
        mId = json.getInt(JSON_ID);
        xxx
        ...
}

我从先前创建的文件加载JSONObject。这很好用,我认为这是最佳选择。

但是我似乎无法理解如何保存存储在ArrayList中的数据,因为您无法将ArrayList放入JSONObject。我尝试创建JSONArray并发现JSONArray s不可序列化。我可以通过将JSONArray转换为String并将其放入我的JSONObject进行保存来解决此问题。然后,当我需要ArrayList时,我只需使用已保存的JSONArray分配新的String,但是不是更好/更有效的方法来保存ArrayList吗?

0 个答案:

没有答案