字符串反序列化和Java中的JSON转换

时间:2017-08-09 00:27:22

标签: java json serialization gson

反序列化我的字符串并使用以下代码将其转换为JSON:

JSONObject returnValue = new JSONObject();
String toJson = null;

    try
    {
        Object otherObjectValue = SerializationUtils
                .deserialize(myBytesArray);
        Gson gson = new Gson();
        toJson = gson.toJson(otherObjectValue);
        returnValue.put(key, toJson);
    }

JSON的某些部分仍然具有以下内容:

{ "key":"ATTRIBUTE_LIST", "value":"{\"attributeContract\":[{\"scope\":\"sso\",\"name\":\"SAML_SUBJECT\",\"description\":\"Click to Edit\",\"required\":true}]}"}

意味着所有内容:

"{\"attributeContract\":[{\"scope\":\"sso\",\"name\":\"SAML_SUBJECT\",\"description\":\"Click to Edit\",\"required\":true}]}"

是一个字符串,而不是另一个带字段的对象。有什么我可以做的事情来通过JSONObject进行消毒以使其成为正确的JSON吗?

1 个答案:

答案 0 :(得分:0)

key部分没问题,意味着整个String都是JSON格式的。 对于value部分,/表示value的值已经是JSON格式。

因此,您可以再次“反序列化”value的值以检索Object结果。或者您可以要求原始JSON的创建者将源Object一次序列化为JSON格式。