我有两个 json 对象,如下所示:
{"name":["Karbonn Smart A12 Star (Black & Silver)","Nokia 220 (Black)","Karbonn Smart A52 Plus (Black & Gold)","Karbonn Smart A12 Star (White & Gold)",.......]}
{"price":["Rs. 3,699","Rs. 2,599","Rs. 2,499","Rs. 3,699",..........]}
Run Code Online (Sandbox Code Playgroud)
我想组合如下两个对象,我尝试通过为每个循环使用嵌套它没有工作我不知道实现此目的的过程:
{"mobile":[{"name":"Karbonn Smart A12 Star (Black & Silver)","price":"Rs. 2,499"}]...........}
Run Code Online (Sandbox Code Playgroud)
我的代码如下:
for(Element a:mobilename)
{
text= a.text();
arr.add(text);
obj1.put("name", arr);
//a11.add(text);
}
arr2.add(obj1);
for(Element b:price)
{
text1=b.text();
arr1.add(text1);
obj.put("price", arr1);
}
arr2.add(obj1);
arr2.add(obj);
obj2.put("mobile", arr2);
Run Code Online (Sandbox Code Playgroud)
你可以在这里找到 org.json JSON-java
import java.util.ArrayList;
import java.util.List;
import org.json.*;
public class JsonTest
{
public String mergeJson(String name, String price)
{
JSONObject nameJ= new JSONObject(name);
JSONObject priceJ= new JSONObject(price);
JSONObject mobileJ = new JSONObject();
JSONArray names = nameJ.getJSONArray("name");
JSONArray prices = priceJ.getJSONArray("price");
JSONArray mobiles = new JSONArray();
if(names.length() == prices.length())
{
for(int i=0;i<names.length();i++)
{
JSONObject mobile = new JSONObject();
mobile.put("name", names.getString(i));
mobile.put("price", prices.getString(i));
mobiles.put(mobile);
}
}
mobileJ.put("mobile", mobiles);
return mobileJ.toString();
}
public static void main(String[] args)
{
String name = "{'name':['Karbonn Smart A12 Star (Black & Silver)','Nokia 220 (Black)','Karbonn Smart A52 Plus (Black & Gold)','Karbonn Smart A12 Star (White & Gold)','Karbonn Smart A50s (Black)','Karbonn Smart A52 Plus (White & Silver)','Karbonn Titanium S2 Plus (White)','Karbonn Smart A11 Star (Black)','Karbonn Smart A11 Star (White)']}";
String price = "{'price':['Rs. 3,699','Rs. 2,599','Rs. 2,499','Rs. 3,699','Rs. 2,699','Rs. 2,499','Rs. 4,999','Rs. 4,399','Rs. 4,499']}";
JsonTest test = new JsonTest();
System.out.println(test.mergeJson(name,price));
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8449 次 |
| 最近记录: |