我正在尝试使用JSON库来增强JSON。在momant我正在创建JSONArray添加以添加我的列表中的所有值,但我面临这个问题
方法put(int,boolean)在JSONArray类型中不适用于参数(String,List)
此行arrivalMoFr.put("mon-fri", timeEntries);
如何将列表添加到JSONArray
?
我感谢任何帮助。
代码:
List<String> timeEntries = entry.getValue();
try {
JSONObject timeTable = new JSONObject();
timeTable.put("route", route);
JSONObject info = new JSONObject();
info.put("direction", direction);
JSONObject stops = new JSONObject();
stops.put("stops_name", key);
JSONObject arrivals = new JSONObject();
JSONArray arrivalMoFr = new JSONArray();
//The error is here.
arrivalMoFr.put("mon-fri", timeEntries);
arrivals.put("mon-fri", arrivalMoFr);
stops.put("arrival_time", arrivals);
info.put("stops", stops);
timeTable.put("info", info);
System.out.println(timeTable.toString(3));
}
修改 我这样添加了它,但我现在得到了这个结果:
JSONObject arrivals = new JSONObject();
JSONArray arrivalMoFr = new JSONArray();
arrivalMoFr.put( timeEntries);
arrivals.put("mon-fri", arrivalMoFr);
结果:
{
"route": "4",
"info": {
"stops": {
"arrival_time": {"mon-fri": [[
"05:04",
"18:41",
"19:11",
"19:41",
"20:11"
]]},
"stops_name": "Heiweg "
},
"direction": "Groß Grönau"
}
}
答案 0 :(得分:0)
您可以使用Gson将List<String>
转换为JSON
List<String> listStrings = new ArrayList<String>();
listStrings.add("a");
listStrings.add("b");
Gson objGson = new Gson();
System.out.println(objGson.toJson(listStrings));
输出
["a","b"]
答案 1 :(得分:0)
JSONArray att = new JSONArray(YourList);