当我尝试从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个线程。
答案 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。不知道为什么,但这不是在客户端这样做的好方法。如果有人有这方面的经验 - 帮助。