无法在 Android 中将 java 字符串转换为 JSON 数组

Posted

技术标签:

【中文标题】无法在 Android 中将 java 字符串转换为 JSON 数组【英文标题】:Cannot convert java string to JSON Array in Android 【发布时间】:2020-05-26 18:56:37 【问题描述】:

下面是从 mysql 数据库中获取数据的查询,但问题是在浏览器中它成功输出了数据,但在 android 应用程序中它给出了下面的错误

Java.Long.String Cannot Convert to JsonArray

if($stem=$con->prepare("select question from MCQs  where c_id=$c_id "))
$stem->execute ();
$stem->bind_result($question);
$budget=array();
while($stem->fetch())

    $temp=array();

    $temp['question']=$question;

    array_push($budget,$temp);

echo json_encode($budget);

以下是 JSON 的 Android 端 Java 代码

                    JSONObject jsonObject = new JSONObject(response);
                    String success = jsonObject.getString("success");
                    JSONArray jsonArray = jsonObject.getJSONArray("data");

                    if (success.equals("1")) 
                        for (int i = 0; i < jsonArray.length(); i++) 
                            JSONObject jsonObject1 = jsonArray.getJSONObject(i);
                            String questions = jsonObject1.getString("question").trim();
                            final String opt0ne = jsonObject1.getString("option1").trim();
                            ;
                            String opttwo = jsonObject1.getString("option2").trim();
                            ;
                            String optthree = jsonObject1.getString("option3").trim();
                            final String correctt = jsonObject1.getString("correct").trim();

【问题讨论】:

我喜欢一个好的 Jason 数组。 “但在 Android 应用程序中它给出了以下错误” - 在哪里?我没有看到任何错误。 【参考方案1】:
        JSONObject json = new JSONObject(result);
        JSONArray jArray = json.getJSONArray("data");
        for (int i=0;jArray.length(); i++)
        
         JSONObject jsonObject1 = jsonArray.getJSONObject(i);

         //try this
         String msg= jsonObject1.getString("success"); 
       

【讨论】:

以上是关于无法在 Android 中将 java 字符串转换为 JSON 数组的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android Java 中将 MAC 地址转换为 IP?

如何在Java中将String转换为long?

在Java中将字符串转换为“字符”数组

在swift和java中将字符串转换为base64字节数组给出不同的值

如何在 ios 中将 Base64 编码的 NSString 转换为字节数组(Java)?

如何在Android中将时间戳字符串转换为日期[重复]