{
"data":
{
"map":
{
"allowNestedValues": true,
"create": "2012-12-11 15:16:13",
"title": "test201212110004",
"transitions": []
}
},
"msg": "success",
"code": "0"
}
Oben ist eine JsonObject
, die data
ist eine JsonObject
.
Wie kann ich es in einen String
-ähnlichen "msg":"success"
konvertieren? Wie Sie wissen, kann ich keine doppelten Anführungszeichen außerhalb des Werts von data
hinzufügen.
@hsz Wir haben eine eingebaute Methode, um jsonObject in einen String zu konvertieren. Warum benutzt du das nicht?.
JSONObject json = new JSONObject();
json.toString();
sie können verwenden
JsonObject.getString("msg");
Sie können verwenden:
JSONObject jsonObject = new JSONObject();
jsonObject.toString();
Und wenn Sie einen bestimmten Wert erhalten möchten, können Sie Folgendes verwenden:
jsonObject.getString("msg");
oder Ganzzahlwert
jsonObject.getInt("codeNum");
Fügen Sie doppelte Anführungszeichen außerhalb der Klammern ein und ersetzen Sie doppelte Anführungszeichen in {}
durch \"
Also: "{\"data\":{..... }"
Sie können Gson convertor ausprobieren, um die exakte Konvertierung wie json.stringify zu erhalten
val jsonString:String = jsonObject.toString()
val gson:Gson = GsonBuilder().setPrettyPrinting().create()
val json:JsonElement = gson.fromJson(jsonString,JsonElement.class)
val jsonInString:String= gson.toJson(json)
println(jsonInString)
JSONObject metadata = (JSONObject) data.get("map"); //for example
String jsonString = metadata.**toJSONString()**;