Android 在获取数据后重构我自己的JsonArray
这是我的JsonArray,我想对其进行更改-Android 在获取数据后重构我自己的JsonArray,android,arrays,Android,Arrays,这是我的JsonArray,我想对其进行更改- [ { "email":"orit@hero-apps.io", "imageUrl":"***", "name":"Orit Malki", "videoCounter":31, "winningCounter":8 }, { "email":"1mdtalent@gmail.com", "imageUrl":"***",
[
{
"email":"orit@hero-apps.io",
"imageUrl":"***",
"name":"Orit Malki",
"videoCounter":31,
"winningCounter":8
},
{
"email":"1mdtalent@gmail.com",
"imageUrl":"***",
"name":"1MD Talent",
"videoCounter":14,
"winningCounter":2
},
{
"email":"kobi.shasha@gmail.com",
"imageUrl":"***",
"videoCounter":13,
"winningCounter":2
},
{
"email":"royjohnfriedman@gmail.com",
"imageUrl":"***",
"name":"roy friedman",
"videoCounter":12,
"winningCounter":3
},
{
"email":"ekaterina.lando@gmail.com",
"imageUrl":"***",
"name":"Ekaterina Lando",
"videoCounter":7,
"winningCounter":1
},
{
"imageUrl":"***",
"name":"oritheroapps",
"videoCounter":5,
"winningCounter":1
},
{
"email":"info@hero-apps.io",
"imageUrl":"***",
"name":"Hero Apps",
"videoCounter":5,
"winningCounter":3
},
{
"email":"xiaomiheroapps@gmail.com",
"imageUrl":"***",
"name":"xiaomi Heroapps",
"videoCounter":4,
"winningCounter":0
},
{
"email":"benkl15@gmail.com",
"imageUrl":"***",
"name":"Alon Shlider",
"videoCounter":3,
"winningCounter":0
},
"Mon Sep 02 13:48:42 GMT+03:00 2019"
]
我想将json数组重构为以下格式-
[
"lastUpdate": {time},
"data" : {//all of that data here}
]
之后,我想把它作为一棵树上传到firebase数据,这就是我问这个问题的原因。
这样做的最佳方式是什么?还是我应该保持原样 添加此函数以获得所需的结果-
private void getFullProfilesAsJson(ArrayList<YourObject> list) {
JsonObject object = new JsonObject();
Gson gson = new Gson();
JsonArray data = new JsonArray();
for (Object object : list) {
JsonElement objectJson = gson.toJsonTree(object);
data.add(objectJson);
}
String time = Calendar.getInstance().getTime().toString();
JsonElement timeJson = gson.toJsonTree(time);
retentionFeedJson.add("time", timeJson);
retentionFeedJson.add("data", data);
Timber.tag("jsonArray").d(retentionFeedJson.toString());
}
private void getFullProfilesAsJson(ArrayList列表){
JsonObject对象=新的JsonObject();
Gson Gson=新的Gson();
JsonArray data=新的JsonArray();
用于(对象:列表){
JsonElement objectJson=gson.toJsonTree(对象);
data.add(objectJson);
}
字符串时间=Calendar.getInstance().getTime().toString();
JsonElement timeJson=gson.toJsonTree(时间);
add(“time”,timeJson);
retentionFeedJson.add(“数据”,data);
tag(“jsonArray”).d(retentionFeedJson.toString());
}
我想你想这样做
{"lastUpdate": {time},
"data" :
[
{
"email":"orit@hero-apps.io",
"imageUrl":"***",
"name":"Orit Malki",
"videoCounter":31,
"winningCounter":8
},
{
"email":"1mdtalent@gmail.com",
"imageUrl":"***",
"name":"1MD Talent",
"videoCounter":14,
"winningCounter":2
},
{
"email":"kobi.shasha@gmail.com",
"imageUrl":"***",
"videoCounter":13,
"winningCounter":2
},
{
"email":"royjohnfriedman@gmail.com",
"imageUrl":"***",
"name":"roy friedman",
"videoCounter":12,
"winningCounter":3
},
{
"email":"ekaterina.lando@gmail.com",
"imageUrl":"***",
"name":"Ekaterina Lando",
"videoCounter":7,
"winningCounter":1
},
{
"imageUrl":"***",
"name":"oritheroapps",
"videoCounter":5,
"winningCounter":1
},
{
"email":"info@hero-apps.io",
"imageUrl":"***",
"name":"Hero Apps",
"videoCounter":5,
"winningCounter":3
},
{
"email":"xiaomiheroapps@gmail.com",
"imageUrl":"***",
"name":"xiaomi Heroapps",
"videoCounter":4,
"winningCounter":0
},
{
"email":"benkl15@gmail.com",
"imageUrl":"***",
"name":"Alon Shlider",
"videoCounter":3,
"winningCounter":0
}
]
}
首先,您的目标JSON无效。您可能需要
[{“lastUpdate”:{time},“data”:{//这里的所有数据}]