Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将JsonObject转换为字符串 { “数据”: { “地图”: { “allowNestedValues”:正确, “创建”:“2012-12-11 15:16:13”, “标题”:“Test2012110004”, “过渡”:[] } }, “msg”:“成功”, “代码”:“0” }_Java_String - Fatal编程技术网

Java 将JsonObject转换为字符串 { “数据”: { “地图”: { “allowNestedValues”:正确, “创建”:“2012-12-11 15:16:13”, “标题”:“Test2012110004”, “过渡”:[] } }, “msg”:“成功”, “代码”:“0” }

Java 将JsonObject转换为字符串 { “数据”: { “地图”: { “allowNestedValues”:正确, “创建”:“2012-12-11 15:16:13”, “标题”:“Test2012110004”, “过渡”:[] } }, “msg”:“成功”, “代码”:“0” },java,string,Java,String,上面是一个JsonObject,数据是一个JsonObject 如何将其转换为字符串如“msg”:“success”正如您所知,我不能直接在数据的值之外添加双引号。您可以使用 JsonObject.getString("msg"); 有一个内置方法可以将JSONObject转换为字符串。你为什么不使用这个: JSONObject json = new JSONObject(); json.toString(); 我想你需要这个: 假设您有如下示例JSON: 已转换为字符串: 只需将“替换

上面是一个
JsonObject
数据
是一个
JsonObject

如何将其转换为
字符串
“msg”:“success”
正如您所知,我不能直接在
数据
的值之外添加双引号。

您可以使用

JsonObject.getString("msg"); 

有一个内置方法可以将JSONObject转换为字符串。你为什么不使用这个:

JSONObject json = new JSONObject();

json.toString();

我想你需要这个:

假设您有如下示例
JSON

已转换为字符串:


只需将“替换为\”

在括号外添加双引号,并将
{}
内的双引号替换为
\”

所以:
“{\”数据“:{….}”

o/p:

使用JSON.stringify将整个数据转换为字符串如下所示

var stringData = JSON.stringify(data);
var orgdata = JSON.parse(stringData);
o/p:

使用JSON.parse将整个字符串对象转换为JSON对象如下所示

var stringData = JSON.stringify(data);
var orgdata = JSON.parse(stringData);
o/p:


您可以使用可靠的库GSON

private static final Type DATA_TYPE_JSON = 
        new TypeToken<JSONObject>() {}.getType();           
JSONObject orderJSON = new JSONObject();
orderJSON.put("noOfLayers", "2");
orderJSON.put("baseMaterial", "mat");
System.out.println("JSON == "+orderJSON.toString());
String dataAsJson = new Gson().toJson(orderJSON, DATA_TYPE_JSON);
System.out.println("Value of dataAsJson == "+dataAsJson.toString());
String data = new Gson().toJson(dataAsJson);
System.out.println("Value of jsonString == "+data.toString());
private static final Type DATA\u Type\u JSON=
新的TypeToken(){}.getType();
JSONObject orderJSON=新的JSONObject();
orderJSON.put(“noOfLayers”,“2”);
orderJSON.put(“基材”、“垫子”);
System.out.println(“JSON==”+orderJSON.toString());
字符串dataAsJson=new Gson().toJson(orderJSON,DATA_TYPE_JSON);
System.out.println(“dataAsJson的值==”+dataAsJson.toString());
String data=new Gson().toJson(dataAsJson);
System.out.println(“jsonString的值==”+data.toString());
您可以使用:

JSONObject jsonObject = new JSONObject();
jsonObject.toString();
jsonObject.getString("msg");
如果要获得特定值,可以使用:

JSONObject jsonObject = new JSONObject();
jsonObject.toString();
jsonObject.getString("msg");
或整数值

jsonObject.getInt("codeNum");

您可以尝试Gson convertor,以获得像json.stringify一样的精确转换

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似乎是JSON-p API。如果这是真的,我将使用JSONWriter将JsonValue写入StringWriter:

    JsonObjectBuilder pokemonBuilder = Json.createObjectBuilder();
    pokemonBuilder.add("name", "Pikachu");
    pokemonBuilder.add("type", "electric");
    pokemonBuilder.add("cp", 827);
    pokemonBuilder.add("evolve", true);
    JsonObject pokemon = pokemonBuilder.build();
    StringWriter sw = new StringWriter(128);
    try (JsonWriter jw = Json.createWriter(sw)) {
        jw.write(pokemon);
    }
    String pokemonStr = sw.toString();

我搞不懂…你能重新措辞并给出(甚至是非工作的)代码片段来说明你正在尝试做什么吗?JsonObject.getString(“msg”);你可以用反斜杠添加双引号
\”
如果这是您想要的。请添加您的问题!这是
org.json.JSONObject
的实例吗?如果是,您只需调用
toString()
JSONObject
获取
JSONObject
的JSON文本的方法。看起来3年多后来到这里的人发现有用的东西与被问到的东西根本不相关。而且这个问题也看起来很难澄清。我相信最初的问题是@JayZhang想要平复对象,因此数据是其内部json值的字符串表示形式。似乎没有人回答如何这样做。几年后这样做不太可能对其他人有任何价值。人们从搜索将json转换为字符串开始,陷入困惑的问答会话中,最好删除。{“数据”:“{”映射”:{“allowNestedValues”:true,“pdId”:168543,“source”:“}}”,“msg”:“success”,“code”:“0”}我在响应字符串中得到\\\斜杠。如何在不得到\\\斜杠的情况下转换json对象slashes@Onkar与代码片段一起共享字符串示例。与此线程类似。但找不到答案。{“日期”:“2013/5/15”}.u是否使用import org.json.JSONObject;对我来说工作正常。共享您的确切示例。JSONObject json=new JSONObject();尝试{json.put(“date”,“2013/5/15”);}catch(JSONException e){//TODO自动生成的catch block e.printStackTrace();}System.out.println(json.toString());JSONObject json=(JSONObject)JSONValue.parse(jsonData);JSONObject data=(JSONObject)json.get(“数据”);解析json数据后,需要访问数据对象以获取“映射”数据转换为json字符串。这并不能回答问题。最好使用jsonObject.optString(“msg”)和jsonObject.optInt(“codeNum”),因为如果使用getString()或getInt()msg或codeNum值为null,它将抛出并出错并停止程序。与我提到的方法的唯一区别是,如果值为null,它们不会抛出错误。
jsonObject.getString("msg");
jsonObject.getInt("codeNum");
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)
    JsonObjectBuilder pokemonBuilder = Json.createObjectBuilder();
    pokemonBuilder.add("name", "Pikachu");
    pokemonBuilder.add("type", "electric");
    pokemonBuilder.add("cp", 827);
    pokemonBuilder.add("evolve", true);
    JsonObject pokemon = pokemonBuilder.build();
    StringWriter sw = new StringWriter(128);
    try (JsonWriter jw = Json.createWriter(sw)) {
        jw.write(pokemon);
    }
    String pokemonStr = sw.toString();