Java String 无法转换为 JSON

2024-03-26

我有从服务器获取的 JSON:

 "[{\"id\":\"1\",\"name\":\"Milos\",\"city\":\"Smederevo\",\"email\":\"milos\",\"password\":\"\"},
 {\"id\":\"3\",\"name\":\"Boban\",\"city\":\"Beograd\",\"email\":\"bole\",\"password\":\"\"},
 {\"id\":\"4\",\"name\":\"Pele\",\"city\":\"Brazil\",\"email\":\"[email protected] /cdn-cgi/l/email-protection\",\"password\":\"\"},
 {\"id\":\"5\",\"name\":\"admin\",\"city\":\"Smederevo\",\"email\":\"admin\",\"password\":\"\"}]"

我正在使用该 json 并发送到我的线程(android 线程):

  try {
            // Method from which I am getting Json described above
            String s = dm.getAllUsers();

            /*JSONParser jp = new JSONParser();             
            JsonElement jelement = new JsonParser().parse(s);   
                JsonArray array1 = jelement.getAsJsonArray();*/

            JSONArray array = new JSONArray(s);
            for (int i = 0; i < array.length(); i++) {

                 JSONObject menuObject = array.getJSONObject(i);

                 // doing something with the object
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }

我根本无法处理该 Json。 我收到错误“java.lang.String 无法转换为 JSONArray”。 A知道问题是由“\”引起的,但我只是不知道如何摆脱“\”。

I tried:

1) s.replace("\\", "");
2) s.replace("\"", "'");
3) s.replaceAll("\\", "");
4) s.replaceAll("\"", "'");

为了删除“\”但替换根本没有反应。 我还尝试使用“google-gson-2.2.2”库解决问题(上面注释下的代码,在该方法下)。

请问有什么建议吗?


尝试这个解决方案。

s.replaceAll("\\\\", "");

这肯定会起作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java String 无法转换为 JSON 的相关文章

随机推荐