字符串到java中的jsonobject [关闭]

Posted

技术标签:

【中文标题】字符串到java中的jsonobject [关闭]【英文标题】:String to jsonobject in java [closed] 【发布时间】:2013-10-24 10:00:30 【问题描述】:

这是来自 jsonObject 的字符串

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

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

【问题讨论】:

您在使用众多库中的哪一个? Google 可以为您提供更好的结果。令人惊讶的是,在这种情况下,Google's gson 会为您提供帮助。 【参考方案1】:

使用这个:

import org.json.JSONArray;
// ...

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"));
    

输出:

1
ABC
2
PQR
3
XYZ

【讨论】:

从哪个包导入JSONArray? @PrafullaKumarSahu 例如:org.json.JSONArray 添加这两个答案会更好,因为它使答案更加清晰。谢谢。【参考方案2】:

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

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

【讨论】:

【参考方案3】:

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

【讨论】:

【参考方案4】:

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

 String str = "xyz":["name":"apple","email_id":"apple@apple.com"]

 JSONObject json = JSONObject.fromObject(str);

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

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

这应该可行。

【讨论】:

添加这是什么包JSONObject 因为不是来自org.json.simple.JSONObject

以上是关于字符串到java中的jsonobject [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

jsonobject接受不了数组吗

JSONObject JSONArray json字符串 HashMap ArryList 在java开发中用到的数据结构

将 JSONObject 中的文件发送到 REST WebService

保留空值——Java POJO 到 org.JSONObject

从字符串中获取 JSONObject

如何获取根据 JAVA 中的用户选择而变化的 JsonObjects?