字符串到java中的jsonobject

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/19400867/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-12 16:50:28  来源:igfitidea点击:

String to jsonobject in java

javaarraysjsonstring

提问by Nitin Karale

This is string from jsonObject

这是来自 jsonObject 的字符串

[
    {
        "No": "1",
        "Name": "ABC"
    },
    {
        "No": "2",
        "Name": "PQR"
    },
    {
        "No": "3",
        "Name": "XYZ"
    }
]

I want convert to this string to JSONObject to get this value in JSONArray

我想将此字符串转换为 JSONObject 以在 JSONArray 中获取此值

采纳答案by Maxim Shoustin

Use this one:

使用这个:

String jsonStr = "[{\"No\":\"1\",\"Name\":\"ABC\"},{\"No\":\"2\",\"Name\":\"PQR\"},{\"No\":\"3\",\"Name\":\"XYZ\"}]";

   JSONArray array = new JSONArray(jsonStr); 

    for(int i=0; i<array.length(); i++){
        JSONObject jsonObj  = array.getJSONObject(i);
        System.out.println(jsonObj.getString("No"));
        System.out.println(jsonObj.getString("Name"));
    }

Output:

输出:

1
ABC
2
PQR
3
XYZ

回答by ovunccetin

You can use GSONto parse JSON strings into Java objects and vice versa.

您可以使用GSON将 JSON 字符串解析为 Java 对象,反之亦然。

回答by mqshen

Use Google's JSON library (google-gson):

使用 Google 的 JSON 库 (google-gson):

JsonParser jsonParser = new JsonParser();
JsonElement element = jsonParser.parse(your json string);

回答by Ashu Phaugat

I suppose your input string is str,

我想你的输入字符串是 str,

 String str = {"xyz":[{"name":"apple","email_id":"[email protected]"}]}

 JSONObject json = JSONObject.fromObject(str);

 JSONArray jarr = json.getJSONArray("xyz");

Inplace of xyz, you can pass root string input.

代替 xyz,您可以传递根字符串输入。

This should work.

这应该有效。