如何编写和读取包含复杂json数据的内容?

时间:2014-12-17 05:13:30

标签: android json sharedpreferences

朋友:

我在Android上收到来自远程服务器的响应:

{
"items": {
    "persons": [
        {
            "id": "200120",
            "name": "Bill"
        },
        {
            "id": "200121",
            "name": "Jim"
        }
    ],
    "tasks": [
        {
            "id": "001",
            "name": "Fetch ten books",
            "deadline": "5:30 p.m.",
            "scores": "10"
        },
        {
            "id": "002",
            "name": "Fetch thirty books",
            "deadline": "5:30 p.m.",
            "scores": "30"
        }
    ],
    "intro": "This is a funny game."
},
"otherObj": []
}

我想把它保存到手机上。我不认为将它保存到数据库中是一个不错的选择。但是,如果将响应放到SharedPreferences文件中,则读取速度不快。还有其他办法吗?

2 个答案:

答案 0 :(得分:1)

无需将此数据保存到数据库中,因为这些值是动态的,并且会不时更改。

在您的Activity中,调用API并获取JSON作为响应,然后解析此JSON并将其显示在设备上。

要将其存储在设备上,您也可以使用Singleton类。

对于JSON解析器,请参阅http://www.tutorialspoint.com/android/android_json_parser.htm

答案 1 :(得分:0)

您可以先将数据保存到对象中,最后保存到Object Array中,然后保存到数据库中。(如果您的数据是动态的,最好只处理Object而不是数据库)

要保存到数据库,您可以使用

db.beginTransaction();
for(object : ObjectArray){
   db.dboperation();
}
db.setTransactionSuccessful();
db.endTransaction();