1、直接一个数组

前面为jsondata,下面是解析方法:

 <strong>// [{"devid":"1234567800","latitude":"29.4963","longitude":"116.189","postime":"2014-06-10 12:13:00"},// {"devid":"1234567832","latitude":"29.4943","longitude":"1161.129","postime":"2014-06-11 12:13:00"}]JSONArray jsonArray = new JSONArray(jsonData);for (int i=0;i<jsonArray.length();i++){JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i); str=str+"第"+i+"个,devid:"+jsonObject2.getString("devid")+"维度:"+jsonObject2.getString("latitude")+"\n";    }</strong>


2、最简单 的 直接一个对象

前面为jsondata,下面是解析方法:

<span style="font-size:24px;"> </span><span style="font-size:18px;"> // {"username":"zms",age:23,"addr","from china"};String json="{\"username\":\"zms\",\"age\":43,\"addr\":\"江西省高安市村前镇\"}";
</pre><pre name="code" class="java" style="font-weight: bold;">  JSONObject jsonObject2 =new JSONObject(json);str="名字:"+jsonObject2.getString("username")+"年薪:"+jsonObject2.getString("age")+jsonObject2.getString("addr")+"\n";</span>
<span style="font-size:18px;">
</span>


3、 对象里有数组

<span style="font-size:24px;"> </span><span style="font-size:18px;">//{"username":"zms",age:11,</span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>"jicheng":[{"zhengshu":"PMP","date":"2011年"},</span>
<span style="font-size:18px;">  <span style="white-space:pre">     </span>   {"zhengshu":"信息系统项目管理师","date","2012年"}]</span>
<span style="font-size:18px;"><span style="white-space:pre">           </span>,"addr":"江西"}</span>
<span style="font-size:18px;">// 这种也属于 对象里有数组   </span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>{"json":[{"username":"zms","date":"2011年"},{"username":"ivy","date","2012年"}]}</span>
<span style="font-size:18px;">
String json= "{\"username\":\"张木生\",age:11,\</span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>"jicheng\":[{\"zhengshu\":\"PMP\",\"date\":\"2011年\"},</span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>{\"zhengshu\":\"信息系统项目管理师\",\"date\":\"2012年\"}],</span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>\"addr\":\"江西\"}";
      JSONObject jsonObject2 =new JSONObject(json);str="名字:"+jsonObject2.getString("username");str=str+"工龄:"+jsonObject2.getString("age")+"证书:";JSONArray jsonArray = jsonObject2.getJSONArray("jicheng"); for (int i=0;i<jsonArray.length();i++){JSONObject jsonObjectSon= (JSONObject)jsonArray.opt(i); str=str+jsonObjectSon.getString("zhengshu")+"年份:"+jsonObjectSon.getString("date");}str=str+"籍贯"+jsonObject2.getString("addr");</span>

4、直接一个数组

 // [{"devid":"1234567800","latitude":"29.4963","longitude":"116.189"},{"devid":"1234567832","latitude":"29.4943","longitude":"1161.129"}]String json="[{\"devid\":\"1234567800\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"devid\":\"1234567832\",\"latitude\":\"29.4943\",\"longitude\":\"1161.129\"}]";
</pre><pre name="code" class="java"> JSONArray jsonArray = new JSONArray(json);for (int i=0;i<jsonArray.length();i++){JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i); str=str+"第"+i+"个,devid:"+jsonObject2.getString("devid")+"维度:"+jsonObject2.getString("latitude")+"经度<span style="white-space:pre"> </span> :"+jsonObject2.getString("longitude")+"\n";}

/*从安卓3.0以后,就不允许在主线程中直接访问网络,必须在子线程中访问
       访问后要修改主线程的UI,需要使用handler通信*/
详细见下一篇

解决方法:可以使用采用异步或者开启新的子线程

前面为jsondata,下面是解析方法:

 <strong>// [{"devid":"1234567800","latitude":"29.4963","longitude":"116.189","postime":"2014-06-10 12:13:00"},// {"devid":"1234567832","latitude":"29.4943","longitude":"1161.129","postime":"2014-06-11 12:13:00"}]JSONArray jsonArray = new JSONArray(jsonData);for (int i=0;i<jsonArray.length();i++){JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i); str=str+"第"+i+"个,devid:"+jsonObject2.getString("devid")+"维度:"+jsonObject2.getString("latitude")+"\n";    }</strong>


2、最简单 的 直接一个对象

前面为jsondata,下面是解析方法:

<span style="font-size:24px;"> </span><span style="font-size:18px;"> // {"username":"zms",age:23,"addr","from china"};String json="{\"username\":\"zms\",\"age\":43,\"addr\":\"江西省高安市村前镇\"}";
</pre><pre name="code" class="java" style="font-weight: bold;">  JSONObject jsonObject2 =new JSONObject(json);str="名字:"+jsonObject2.getString("username")+"年薪:"+jsonObject2.getString("age")+jsonObject2.getString("addr")+"\n";</span>
<span style="font-size:18px;">
</span>


3、 对象里有数组

<span style="font-size:24px;"> </span><span style="font-size:18px;">//{"username":"zms",age:11,</span>
<span style="font-size:18px;"><span style="white-space:pre">    </span>"jicheng":[{"zhengshu":"PMP","date":"2011年"},</span>
<span style="font-size:18px;">  <span style="white-space:pre">      </span>   {"zhengshu":"信息系统项目管理师","date","2012年"}]</span>
<span style="font-size:18px;"><span style="white-space:pre">            </span>,"addr":"江西"}</span>
<span style="font-size:18px;">// 这种也属于 对象里有数组   </span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>{"json":[{"username":"zms","date":"2011年"},{"username":"ivy","date","2012年"}]}</span>
<span style="font-size:18px;">
String json= "{\"username\":\"张木生\",age:11,\</span>
<span style="font-size:18px;"><span style="white-space:pre">  </span>"jicheng\":[{\"zhengshu\":\"PMP\",\"date\":\"2011年\"},</span>
<span style="font-size:18px;"><span style="white-space:pre">   </span>{\"zhengshu\":\"信息系统项目管理师\",\"date\":\"2012年\"}],</span>
<span style="font-size:18px;"><span style="white-space:pre">  </span>\"addr\":\"江西\"}";
      JSONObject jsonObject2 =new JSONObject(json);str="名字:"+jsonObject2.getString("username");str=str+"工龄:"+jsonObject2.getString("age")+"证书:";JSONArray jsonArray = jsonObject2.getJSONArray("jicheng"); for (int i=0;i<jsonArray.length();i++){JSONObject jsonObjectSon= (JSONObject)jsonArray.opt(i); str=str+jsonObjectSon.getString("zhengshu")+"年份:"+jsonObjectSon.getString("date");}str=str+"籍贯"+jsonObject2.getString("addr");</span>

4、直接一个数组

 // [{"devid":"1234567800","latitude":"29.4963","longitude":"116.189"},{"devid":"1234567832","latitude":"29.4943","longitude":"1161.129"}]String json="[{\"devid\":\"1234567800\",\"latitude\":\"29.4963\",\"longitude\":\"116.189\"},{\"devid\":\"1234567832\",\"latitude\":\"29.4943\",\"longitude\":\"1161.129\"}]";
</pre><pre name="code" class="java"> JSONArray jsonArray = new JSONArray(json);for (int i=0;i<jsonArray.length();i++){JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i); str=str+"第"+i+"个,devid:"+jsonObject2.getString("devid")+"维度:"+jsonObject2.getString("latitude")+"经度<span style="white-space:pre">    </span> :"+jsonObject2.getString("longitude")+"\n";}

/*从安卓3.0以后,就不允许在主线程中直接访问网络,必须在子线程中访问
       访问后要修改主线程的UI,需要使用handler通信*/
详细见下一篇

解决方法:可以使用采用异步或者开启新的子线程

json解析几种格式相关推荐

  1. 安卓取map集合转换为json_android json解析成map格式

    "discount": { "3": "34", "4": "33", "5": ...

  2. json 的几种格式

    1 什么是JSON数据? 先看下面,这里有一段JSON数据,我们根据这段数进行讲解: {"paramz": {"feeds": [{"id" ...

  3. java json删除指定元素_简洁而优雅,Python Tablib实现将数据导出为Excel, Json等N种格式...

    遇见 Tablib 我们在 Python 实际开发过程中,经常涉及将数据导出为 Excel.Csv.Yaml.Json 等各种格式的文件的需求,一些粗鲁的实现方式是通过安装各种第三方模块以支持不同格式 ...

  4. 前后端传输数据的编码格式---urlencoded,formdata, json这三种格式的详解

    0. 前后端传输数据的编码格式的总结 ps:我们只对request.POST进行介绍 1. urlencoded(Content-Type:application/x-www-form-urlenco ...

  5. 小程序读取几种不同格式json数据(小程序json解析)

    小程序json解析第一种格式 that.setData({goldData: res.data.result[0], //result里多了个{}所以要标个[0]}) wxml <text cl ...

  6. IOS中Json解析的四种方法

    2019独角兽企业重金招聘Python工程师标准>>> 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此& ...

  7. 【转】IOS中Json解析的四种方法

    原文网址:http://blog.csdn.net/enuola/article/details/7903632 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有 ...

  8. gson解析天气json_几种常用JSON解析库性能比较

    PS:公众号推文时间工作日早晨8点50分,周末下午3点30分,不见不散哈! 作者:飞污熊 xncoding.com/2018/01/09/java/jsons.html 本篇通过JMH来测试一下Jav ...

  9. IOS中四种json解析效率比较

    作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此"http://www.bejson.com/"网站来进 ...

最新文章

  1. CV00-02-CV基本操作1
  2. php 7.0 curl图片上传,PHP 升级到7.4.0后,通过curl上传文件http_code报412
  3. Oracle PL/SQL之Flashback Table与外键约束
  4. java 内部类 加载_java内部类及类加载顺序
  5. boost::interprocess::intrusive_ptr用法的测试程序
  6. centos安装Python2.7
  7. hadoop3.0.3 SLS-Failed to create an AM
  8. linux ssh非交互脚本,Linux expect非交互式执行脚本
  9. GitHub或正式登陆中国!拟在中国设立分公司
  10. lzg_ad:在CF卡上实现EWF功能
  11. 万里牛B轮融资过亿,电商SaaS究竟有多吸金?
  12. 万能密码 php,分析PHP网站下的万能密码
  13. matlab 仿真 毕业设计,毕业设计matlab仿真
  14. SQL中计算字符串的长度函数
  15. 头条推荐量越来越少,是否还要坚持下去?
  16. 开心网kaixin001状告kaixin,停用“开心网”名称,赔偿1000万元并公开道歉
  17. 深圳一普通中学老师工资单曝光,秒杀程序员
  18. 完成端口(CompletionPort)详解 - 手把手教你玩转网络编程系列之三_zzjlzx-ChinaUnix博客...
  19. navicat premium 快捷键
  20. Windows 批量打印

热门文章

  1. python 爬取B站视频弹幕信息
  2. python画土拨鼠代码_Python 用10行代码教你画出太阳花
  3. MES系统软硬件常规故障处理方法
  4. 如何清除Exchange2010邮件日志
  5. eNSP配置ospf实例
  6. 啊哈c语言逻辑推箱子答案,啊哈C语言!逻辑的挑战(修订版)-2018-02-04
  7. Bootstrap的CSS样式
  8. MATLAB中运行MuPAD出现“cannot start engine”错误,解决方法
  9. SpringBoot自动运行sql建表语句
  10. cmd 复制文件夹中(包括子文件夹)所有某个类型的文件