如何将一个JSON包含到另一个JSON中?

时间:2014-03-06 06:20:30

标签: php jquery json

我的第一个json是:这将来自java url,这里我使用php,在php iam中调用java url。

{  
  "categoryId":"Painting",  
  "subCategoryId":"Residential",  
  "alternatives":    [1,2,3,4,5],  
  "criterias":["price","quantity","yom","company"],  
  "answerss":[["1000","12343","4543","","4645646"],["12","23","34","","45"],["2014","","2000","1990","2005"],["xyz","","Abc","jkl","mno"]]  
}  

我的第二个JSON是:这个iam使用jquery生成。

{"criterias":"Location"}  

如何将第二个JSON包含在第一个JSON标准中。

4 个答案:

答案 0 :(得分:1)

您需要将第一个JSON字符串转换为object并向其添加新属性。

如果是Java,您可以使用Google的Gson

Gson gson = new Gson();
JsonObject jsonObj = gson.fromJson (jsonStr, JsonElement.class).getAsJsonObject();
jsonObj.add("criterias", "Location");

如果是JavaScript,

var jObj = JSON.parse(jsonString);
jObj.criterias = "Location";  //jObj.NewItem = "NewValue";

答案 1 :(得分:1)

我相信最初的问题是如何在javascript中合并这两个JSON对象。假设答案很简单。

var firstJson = {  
  "categoryId":"Painting",  
  "subCategoryId":"Residential",  
  "alternatives":    [1,2,3,4,5],  
  "criterias":["price","quantity","yom","company"],  
  "answerss":[["1000","12343","4543","","4645646"],["12","23","34","","45"],["2014","","2000","1990","2005"],["xyz","","Abc","jkl","mno"]]  
};

var secondJson = {"criterias":"Location"};

firstJson.criterias = $.extend({},firstJson.criterias,secondJson.criterias);

答案 2 :(得分:1)

将一个文件包含在另一个文件中的最简单方法是使用cpp(C预处理器)。

例如,如果我将test.json作为

"inner":"value"

和another.json作为

$ cpp -P test.json
{"name":"NAME",
"inner":"value"
}

您应该能够获得

scaffold_1234_ref00001_1234,0,1,NA,0.8... 
scaffold_1235_ref00002_12345,1,0.3,NA,1...

当然,您需要通过正确设置两个片段的格式来确保生成的语法正确。

答案 3 :(得分:0)

以下是您编写nested JSON

的示例
{"menu": {
   "id": "file",
   "value": "File",
   "popup": {
       "menuitem": [
           {"value": "New", "onclick": "CreateNewDoc()"},
           {"value": "Open", "onclick": "OpenDoc()"},
           {"value": "Close", "onclick": "CloseDoc()"}
        ]
   }
 }}

有关更多示例,请访问以下链接:

http://www.jsonexample.com/

http://json.org/example

create nested JSON object in php?