我想像这样创建一个Json
[{"sID":"221","mID":"0"},
{"sID":"222","mID":"11"},
{"sID":"223","mID":"11"}]
我试过下面的代码,但是只为一行创建了Json
JSONObject json = new JSONObject();
JSONObject manJson = new JSONObject();
manJson.put("sID", "23");
manJson.put("mID", "111");
json.put("",manJson);
上面这段代码创建了像这样的Json
{"":{"sID":"23","mID":"111"}}
请告诉我Java代码所需的更改,谢谢。
答案 0 :(得分:1)
将您的代码更改为:
JSONArray jsonArray = new JSONArray();
//Add 1st JSONObject to JSONArray
JSONObject jsonObjone = new JSONObject();
jsonObjone.put("sID", "221");
jsonObjone.put("mID","0");
jsonArray.put(jsonObjone.toString();
//Add 2nd JSONObject to JSONArray
JSONObject jsonObjtwo = new JSONObject();
jsonObjtwo.put("sID", "222");
jsonObjtwo.put("mID","11");
jsonArray.put(jsonObjtwo.toString());
//Add 3rd JSONObject to JSONArray
JSONObject jsonObjthrd = new JSONObject();
jsonObjthrd.put("sID", "223");
jsonObjthrd.put("mID","11");
jsonArray.put(jsonObjthrd.toString());
答案 1 :(得分:0)
在toJSONArray()
上使用manjson
方法。
答案 2 :(得分:0)
我推荐jackson library它让事情变得非常简单。要使用它,你会得到一个像这样的对象......
class Ids {
private int Sid;
private int Mid;
public setSid(int Sid) {
this.Sid = Sid;
}
public setMid(int Mid) {
this.Mid = Mid;
}
public getSid() {
return Sid;
}
public getMid() {
return Mid;
}
}
然后你可以使用库中的objectMapper从你在内存中的数组转到像这样的json String
Ids[] idsArray = new Ids[2];
//add ids object to array
String jsonString = objectMapper.writeValueAsString(idsArray);
当然这样做取决于你的id是如何存储的,但对我而言,它通常使我的代码更清晰,杰克逊图书馆的表现非常好。