如何在Java中正确格式化JSON字符串?

Rol*_*ndo 5 java json

我有一个jersey客户端,它正在从需要获取格式正确的JSON的来源获取JSON:

通过http请求抓取时,我的JSON字符串如下所示:

{
    "properties": [
        {
            someproperty: "aproperty",
            set of data: {
                keyA: "SomeValueA",
                keyB: "SomeValueB",
                keyC: "SomeValueC"
            }
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我遇到问题是因为json必须正确格式化,并且keyA,keB和keyC不在引号内。是否有一些有助于添加引号的库或将此字符串转换为格式正确的json的最佳方法?或者是否有一些简单的方法可以将其转换为json对象,而无需编写一堆具有与传入结构匹配的变量和列表的类?

小智 5

您可以使用json-lib。非常方便!您可以像这样构造json字符串:

JSONObject dataSet = new JSONObject();
dataSet.put("keyA", "SomeValueA") ;
dataSet.put("keyB", "SomeValueB") ;
dataSet.put("keyC", "SomeValueC") ;

JSONObject someProperty = new JSONObject();
dataSet.put("someproperty", "aproperty") ;

JSONArray properties = new JSONArray();
properties.add(dataSet);
properties.add(someProperty);
Run Code Online (Sandbox Code Playgroud)

当然,您只需调用以下命令即可获取JSON字符串 properties.toString()