我有一个如下所示的 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。
所以总的来说,我想将上面的字符串发送到网络服务器。
假设字符串的名称是myString。
rString = myString.replace('[','');
rString = rString.replace(']','');
rString = rString.replace('"','');
String split[] = rString.split(',').
现在你有一个名为 split 的数组,每个位置都是一天。
编辑:这是第一个问题
用那个
JSONArray yourJsonArray = JSONArray.fromObject(yourJson);
我认为这不是来自服务器的确切响应,并且响应中有一个 HTML
<br>
标记。
因为行
Value <br of type java.lang.String cannot be...
明显包含字符串 <br
,请尝试替换 HTML 标签和/或将 HTML 标签解码/转义为纯文本,然后您可以将该纯 JSON 文本转换为 JSONArray。
此片段可能会帮助您解码响应:
String parsedReponse = Html.fromHtml(serverResponse).toString()
if (parsedReponse != null) parsedReponse = parsedReponse.trim();
查看 OkHttp3 和 Retrofit 库,它们非常流行且令人惊叹。他们可以帮助您将 POST 数据发送到您的服务器。