来自String的JSONArray

时间:2015-12-16 16:40:57

标签: java android json

当我尝试从String生成JSON数组时遇到问题...

我已经成功从我的WEB API发送JSON。

我从mongo获取数据,用event.state序列化它并将其发布到我的android中,我把它变成了一个字符串,现在当我想:

JsonConvert.SerializeObject()

我有异常,在Log.D中我看到String,我得到这样的结果:

 JSONArray array = new JSONArray(ThatString)

那些\来自Log.d,它们不存在于真正的String中。

我只复制了两个对象,我还有更多......

顺便说一句。我还有一个错误: 跳过39帧!应用程序可能在其主线程上做了太多工作。

我把那个方法放在runnable中并开始新的线程,但仍然得到错误,起初是69帧现在39个线程。

2 个答案:

答案 0 :(得分:1)

在Android中使用JSON的最简单方法是使用gson库。使用gson,您的代码应如下所示:

    Gson gson = new Gson();
    String [] myArray = gson.fromJson(myString, String[].class);

要添加gson,请修改build.gradle并添加依赖项:

compile 'com.google.code.gson:gson:2.3.1'

或最新的

级别

答案 1 :(得分:0)

我需要这样做:

result = result.substring(1, result.length()-1);
result = result.replace("\\", "");

现在工作得很好。

我在beggining和end中使用斜杠和引号获取String。不知道为什么,但这不是在客户端这样做的好方法。如果有人有这方面的经验 - 帮助。