请查看以下代码段。
密钥'样本的价值'是字符串"[]"
put
& accumulate
个函数正在将其转换为空数组[]
。
import net.sf.json.JSONObject;
public class sample {
public static void main(String[] args){
JSONObject resObj = new JSONObject();
resObj.put("sample","[]");
System.out.println(resObj);
}
}
输出:
{"sample":[]}
我想要值(" []")。 像:
{"sample":"[]"}
如何解决此问题?
更新
以上示例仅用于解释问题。
实际上,从一个大的XML我生成一个JSON。 在生成的JSON中没有问题。
传递整个JSON字符串以累积&把功能面临这个问题。
答案 0 :(得分:0)
您正在使用的json-lib
库是一个相当古老的实现,请尝试“官方”org.json,可以找到here并使用maven
<!-- https://mvnrepository.com/artifact/org.json/json -->
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20170516</version>
</dependency>
然后
import org.json.JSONObject;
System.out.println( new JSONObject().put("sample","[]"));
将正确输出
{"sample":"[]"}
答案 1 :(得分:0)
你可以使用Google json library
它适用于我,输出为{"sample":"[]"}