假设我正在尝试获得这样的Json结构:
{
"rows": [
{
"date_str": "2016-07-01",
"sleep_7_or_more_hours": true,
"activity_minutes": "0",
"water_5_or_more_cups": true,
"fruit_veg_4_or_more_servings": true,
"physical_activity_description": "walking"
}
{
"date_str": "2016-07-02",
"sleep_7_or_more_hours": true,
"activity_minutes": "30",
"water_5_or_more_cups": true,
"fruit_veg_4_or_more_servings": true,
"physical_activity_description": "walking"
}
...etc
]
}
Run Code Online (Sandbox Code Playgroud)
关于构建这个Json的一些问题:
JsonArray?我需要它在Json中命名"rows".JsonArray rows到a JsonObject(我假设外括号的意思是什么)?这是我用来做的代码:
JsonArray rows = new JsonArray();
//Code to get local dates omitted
for (LocalDate date = start; !date.isAfter(end); date = date.plusDays(1))
{
JsonObject row = new JsonObject();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-mm-dd", Locale.ENGLISH);
String dateString = date.format(formatter);
row.addProperty("date_str", dateString);
boolean sleptLongEnough = (sleepLog.getTimeInBed(getDate(date)) > (7 * 60));
row.addProperty("sleep_7_or_more_hours", sleptLongEnough);
int activityMinutes = (activitiesLog.getMinutesVeryActive(getDate(date)) + activitiesLog.getMinutesFairlyActive(getDate(date)));
...
//Omitted extra code
rows.add(row);
}
JsonObject logs = new JsonObject();
//add rows to logs here.
Run Code Online (Sandbox Code Playgroud)
我需要添加rows到logs.但是,JsonObject似乎只有.add(JsonElement)和.addProperty(String, variousTypes),并且没有添加数组.我错过了什么?
编辑:我没有使用Gson序列化对象,因为Json由来自几个日志中的每一个的数据项组成(甚至不接近每个日志中的所有信息).
the*_*wmo 20
JsonArray是一个实例JsonElement.所以.add("name", element)元素是a 的方法JsonArray应该可行.
| 归档时间: |
|
| 查看次数: |
14433 次 |
| 最近记录: |