问一个JSON解析的问题

qq_40252810 2019-05-10 06:55:00
我用HttpURLConnection方式接收到数据JSON文件,然后转换成InputStream数据(InputStream in = connection.getInputStream();)
然后解析JSON文件,我用的是JSONArray jsonArray = new JSONArray(String);,由于接收的参数是String类型,因此需要把InputStream转换成String类型,但是程序运行时崩溃,对于如何将InputStream转换成String类型,我试了好几种方式,语法是不报错,而且输出的字符串和我的JSON文件是一致的,但是一执行JSONArray jsonArray = new JSONArray(jsonData);(jsonData就是String类型)程序就崩溃,不知道是InputStream 转换成String出现问题还是啥问题,错误提示是:
unable to resolve resolve superclass of lnet/sf/json/JSONexception
link of class lnet/sf/json/jsonexception failed
...全文
1563 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_44928882 2019-05-21
  • 打赏
  • 举报
回复
请问一下,云数据库是从哪里调用出来的?用的是什么函数啊
qq_40252810 2019-05-15
  • 打赏
  • 举报
回复
引用 8 楼 开发者_android 的回复:
[quote=引用 2 楼 开发者_android 的回复:]
把转换完的String看一下,是否是正确的JSONArray格式,以错误提示信息看,你的String并不能转换为JSONArray对象。


应该是包的问题,你看一下是不是包没有导入或导入了,libs下面确没有。[/quote]
好的
开发者_android 2019-05-14
  • 打赏
  • 举报
回复
引用 2 楼 开发者_android 的回复:
把转换完的String看一下,是否是正确的JSONArray格式,以错误提示信息看,你的String并不能转换为JSONArray对象。


应该是包的问题,你看一下是不是包没有导入或导入了,libs下面确没有。
新风s 2019-05-13
  • 打赏
  • 举报
回复
应该是缺少了某个依赖包
qq_40252810 2019-05-13
  • 打赏
  • 举报
回复
引用 5 楼 Unicode Escapes 的回复:
unable to resolve resolve superclass of lnet/sf/json/JSONexception

这个应该不是你的数据有问题,而是你的jar引用有问题

看一下这个类所在的jar文件有没有引入,有没有export,比如eclipse中可参考如下
1. 右键项目,选择属性
2. Java Build Patch -> Order and Export
3. 勾上 Android Private Libraries
4. 重新编译即可

试过了,还是不行,不知道是不是自己下载的jar有问题
Unicode Escapes 2019-05-12
  • 打赏
  • 举报
回复
unable to resolve resolve superclass of lnet/sf/json/JSONexception

这个应该不是你的数据有问题,而是你的jar引用有问题

看一下这个类所在的jar文件有没有引入,有没有export,比如eclipse中可参考如下
1. 右键项目,选择属性
2. Java Build Patch -> Order and Export
3. 勾上 Android Private Libraries
4. 重新编译即可
qq_40252810 2019-05-12
  • 打赏
  • 举报
回复
引用 2 楼 开发者_android 的回复:
把转换完的String看一下,是否是正确的JSONArray格式,以错误提示信息看,你的String并不能转换为JSONArray对象。

我把json数据删到只剩一条,然后输出来了,
jsonData数据我觉得是对的,但还是不行,
我就只初始化了JSONArray jsonArray = new JSONArray();,还是错的
public void parseJSONWithJSONObject(String jsonData)
{
Log.d("par", jsonData);
try{
Log.d("dddddd", "dddddd");
JSONArray jsonArray = new JSONArray();
Log.d("fffffff", "fffffff");
}catch(Exception e)
{
e.printStackTrace();
}
}


qq_40252810 2019-05-12
  • 打赏
  • 举报
回复
引用 1 楼 유 的回复:
你的 json data是 数组么

是这样的,[{"id":"5","version":"5.5","name":"Angry Birds"}]
2019-05-10
  • 打赏
  • 举报
回复
你的 json data是 数组么
开发者_android 2019-05-10
  • 打赏
  • 举报
回复
把转换完的String看一下,是否是正确的JSONArray格式,以错误提示信息看,你的String并不能转换为JSONArray对象。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧