1

次の問題があります。次のjsonを送信する必要があります  

tosend = {"tn": 37537.6015625,
"d":
{"fa": 12, "nt": 37537.6015625, "ca": 1, "a": 4692.2001953125, "p": 4692.2001953125, "a": 1116861},
"tb": -27182.3984375}.

このために、メソッドjson.put()を使用してから、json.acummulate( "d"、JsonObject)を使用しました。

次の結果を出すためにできること  

 tosend = {"tn": 37537.6015625,
"d":
[{"Fa": 12, "nt": 37537.6015625, "ca": 1, "a": 4692.2001953125, "p": 4692.2001953125, "a": 1116861}
], "Tb": -27182.3984375}.

2つのデータfuciona"["を追加すると。サーバー上のスクリプトを変更できないため、この方法で送信する必要があります。

以前はjson.appendを使用していました。

4

1 に答える 1

0

現在の jsonObject を次のように作成します。

//Create main json object
JSONObject json = new JSONObject();

//Create d JSONArray
JSONArray dJsonarray = new JSONArray();

// Create JSONObject
JSONObject djson = new JSONObject();
// put value inside d json object
dJson.put("fa", "12");
dJson.put("nt", "37537.6015625");
dJson.put("ca", "1");
dJson.put("a", "4692.2001953125");
dJson.put("p", "4692.2001953125");
dJson.put("a", "1116861");

// put JSONObject to json Array
dJsonarray.put(dJson);    

//put tn key-value in json object
json.put("tn","37537.6015625");
//put d json object name-value in json object
json.put("d",dJsonarray);

JSONObjectを呼び出す必要はありません。このメソッドは、すでに name にマップされている配列に value を追加するため、蓄積します 。サーバーに送信したいメインのjson文字列にはjsonObjectしかないため

于 2013-01-26T18:34:46.670 に答える