userJson    {"CODE":{"ERROR_CODE":0},"DATA":[{"xm":"张三","id":10},{"xm":"李四","id":11},{"xm":"王五","id":12}]}idJson      {"CODE":{"ERROR_CODE":0},"DATA":[{"name":"aa","id":1},{"name":"bb","id":2},{"name":"cc","id":3}]}在java中怎么抽取上述两个json中DATA部分,插入到一个json中。
形成{"user":[{"xm":"张三","id":10},{"xm":"李四","id":11},{"xm":"王五","id":12}],"id":[{"name":"aa","id":1},{"name":"bb","id":2},{"name":"cc","id":3}]}的形式
JSONJava

解决方案 »

  1.   

    拿个工具类,把字符串转成json对象,然后使用json.data就能获取这部分值了,然后自己想怎么搞就怎么搞
      

  2.   

    import java.util.List;import com.google.gson.Gson;/**
     * 
     *//**
     * @time 2013-6-18
     */
    public class TestGson {
    public static void main(String[] args){
    String userjson =
    "{\"CODE\":{\"ERROR_CODE\":0},\"DATA\":[{\"xm\":\"张三\",\"id\":10},{\"xm\":\"李四\",\"id\":11},{\"xm\":\"王五\",\"id\":12}]}";
    String idjson = 
    "{\"CODE\":{\"ERROR_CODE\":0},\"DATA\":[{\"name\":\"aa\",\"id\":1},{\"name\":\"bb\",\"id\":2},{\"name\":\"cc\",\"id\":3}]}";

    Gson gson = new Gson();

    Userobj user = gson.fromJson(userjson, Userobj.class);

    Idobj id = gson.fromJson(idjson, Idobj.class);

    Toobj to = new Toobj();
    to.setUser(user.getDATA());
    to.setId(id.getDATA());

    String result = gson.toJson(to);

    System.out.println(result);
    }
    }class Userobj{
    Code CODE;
    List<UserData> DATA;

    public Code getCODE() {
    return CODE;
    } public void setCODE(Code cODE) {
    CODE = cODE;
    }

    public List<UserData> getDATA() {
    return DATA;
    } public void setDATA(List<UserData> dATA) {
    DATA = dATA;
    }
    }class Idobj{
    Code CODE;
    List<IdData> DATA;
    public Code getCODE() {
    return CODE;
    }
    public void setCODE(Code cODE) {
    CODE = cODE;
    }
    public List<IdData> getDATA() {
    return DATA;
    }
    public void setDATA(List<IdData> dATA) {
    DATA = dATA;
    }
    }class Toobj{
    List<UserData> user;
    List<IdData> id;
    public List<UserData> getUser() {
    return user;
    }
    public void setUser(List<UserData> user) {
    this.user = user;
    }
    public List<IdData> getId() {
    return id;
    }
    public void setId(List<IdData> id) {
    this.id = id;
    }

    }class Code{
    int ERROR_CODE; public int getERROR_CODE() {
    return ERROR_CODE;
    } public void setERROR_CODE(int eRRORCODE) {
    ERROR_CODE = eRRORCODE;
    }
    }class UserData{
    String xm;
    int id;

    public String getXm() {
    return xm;
    }

    public void setXm(String xm) {
    this.xm = xm;
    }

    public int getId() {
    return id;
    }

    public void setId(int id) {
    this.id = id;
    }

    }class IdData{
    String name;
    int id;
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }

    }最后的打印结果:{"user":[{"xm":"张三","id":10},{"xm":"李四","id":11},{"xm":"王五","id":12}],"id":[{"name":"aa","id":1},{"name":"bb","id":2},{"name":"cc","id":3}]}
    关于 Gson 你在google上搜索一下就有了
      

  3.   

    JSONObject jsonObject = new JSONObject();
    JSONObject codeObject = new JSONObject();
    codeObject.put("ERROR_CODE", 0);
        JSONArray jsonArray = new JSONArray();
        JSONObject jObject = new JSONObject();
        jObject.put("xml","张三");
        jObject.put("id", 10);
        JSONObject jObject1 = new JSONObject();
        jObject1.put("xml","李四");
        jObject1.put("id", 11);
        JSONObject jObject2 = new JSONObject();
        jObject2.put("xml","王五");
        jObject2.put("id", 12);
        jsonArray.element(jObject).element(jObject1).element(jObject2);
        jsonObject.put("CODE",codeObject);
        jsonObject.put("DATA", jsonArray);
        System.out.println(jsonObject);
        JSONObject json = new JSONObject();
    JSONObject code = new JSONObject();
    code.put("ERROR_CODE", 0);
        JSONArray array = new JSONArray();
        JSONObject jo = new JSONObject();
        jo.put("name","aa");
        jo.put("id", 1);
        JSONObject jo1 = new JSONObject();
        jo1.put("name","bb");
        jo1.put("id", 2);
        JSONObject jo3 = new JSONObject();
        jo3.put("name","cc");
        jo3.put("id", 3);
        array.element(jo).element(jo1).element(jo3);
        json.put("CODE",code);
        json.put("DATA", array);
        System.out.println(json);
        
        JSONObject object = new JSONObject();
        JSONArray jsonArray2 = new JSONArray();
        JSONArray a1 = jsonObject.getJSONArray("DATA");
        ListIterator iterator =  a1.listIterator();
        while(iterator.hasNext()){
         jsonArray2.element(iterator.next());     
        }
        object.put("user",jsonArray2);
    System.out.println(object);