【问题标题】:How to convert Json string into Json Array in Android Studio Java如何在 Android Studio Java 中将 Json 字符串转换为 Json 数组
【发布时间】:2020-02-07 14:40:12
【问题描述】:

我有一个像下面这样的 Json 字符串

["Monday","Tueday","wednesday","Thuesday","Friday","Saturday"]

我想要做的是使用 android studio volley 库将此 Json 字符串发送到 Web 服务器。

所以我一直收到这个错误

 com.android.volley.ParseError: org.json.JSONException: Value <br of type java.lang.String cannot be converted to JSONArray

字符串无法转换为JsonArray。

所以我有 2 个问题需要帮助。

我的第一个是如何将字符串转换为 JsonArray。例如下面的字符串。

 ["Monday","Tueday","wednesday","Thuesday","Friday","Saturday"]

我的第二个问题是将这个 Jason 数组(一旦我们创建)传递给 Web 服务器。我正在研究 Hashmap,但我不知道如何在 Hashmap 中发送 JsonArray。

我尝试了以下代码,但没有成功。

@Override
        protected Map<String, String> getParams() throws AuthFailureError {
            return super.getParams();
        }

我不知道如何在 hashmap 中发送 JsaonArray。

所以总的来说,我想把上面的字符串发送到网络服务器。

【问题讨论】:

    标签: android arrays json android-volley


    【解决方案1】:

    假设字符串的名字是myString。

    rString = myString.replace('[','');
    rString = rString.replace(']','');
    rString = rString.replace('"','');
    String split[] = rString.split(',').
    

    现在你有一个名为 split 的数组,每个位置都是一天。

    【讨论】:

    • 这是一个 JsonArray 还是普通的 Java 数组
    • 普通的java数组,然后你可以解析成JSON。
    【解决方案2】:

    编辑:这是第一个问题

    使用它

    JSONArray yourJsonArray = JSONArray.fromObject(yourJson);
    

    【讨论】:

      【解决方案3】:

      第一个问题的答案:

      我认为这不是来自服务器的确切响应,并且响应中有一个 HTML &lt;br&gt; 标记。

      因为Value &lt;br of type java.lang.String cannot be... 行显然包含字符串&lt;br,请尝试替换 HTML 标记和/或将 HTML 标记解码/转义为纯文本,然后您可以将该纯 JSON 文本转换为 JSONArray em>。

      这个 sn-p 可能会帮助您解码响应:

      String parsedReponse = Html.fromHtml(serverResponse).toString()
      if (parsedReponse != null) parsedReponse = parsedReponse.trim();
      

      第二个问题的答案:

      查看 OkHttp3 和 Retrofit 库,它们非常受欢迎且令人惊叹。

      这些可以帮助您将 POST 数据发送到您的服务器


      希望对您有所帮助:)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-13
        • 2020-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多