如何将所有值从一个JSONObject复制到另一个?

时间:2018-08-26 18:17:56

标签: java json copy json-lib

我知道完全可以将每个单独的组件一个接一个地复制,但是这样做非常麻烦而且相当丑陋。是否有一种更简单的方法将所有值从一个JSONObject复制到另一个?需要注意的重要一点是,我正在使用json-lib。如果绝对必要,我不反对切换工具。重点是,这是一种效率很低的处理方式。

1 个答案:

答案 0 :(得分:0)

经过数小时的搜索,我终于找到了答案。就这么简单,我感到有些尴尬。

Json-lib有一个漂亮的功能,它允许您获取当前的JSONObject并将JSONObject的全部解析为一个String。并且已经存在一种从String构建JSONObject的方法。因此,您要做的就是将JSONObject转换为String,然后再转换为JSONObject。您可以将字符串存储为变量(或将其用作返回值),然后简单地获取先前存在的JSONObject引用,然后使用该方法从String重建JSONObject。就这么简单。

编辑-以为我会举一个快速的代码示例

JSONObject a = /* pretend a has 100 elements inside */
String temp = a.toString();
JSONObject b = JSONObject.fromObject(temp);
String temp2= b.toString();
if(temp.equals(temp2)){System.out.println("Well done.");}