Android 解析JSON格式数据
比起XML,JSON主要优势在于它的体积更小,在网络上传输的时候可以更省流量。但缺点在于,它的语义性较差,显示不如XML直观。
JSON格式 : { "name_A" : "value_A","name_B" : "value_B" }
表示:name_A = value_A; name_B = value_B;
我将对下面的JSON数据进行解析:
[{"id":"5","version":"5.5","name":"愤怒的小鸟"},
{"id":"6","version":"7.0","name":"神庙逃亡"},
{"id":"7","version":"3.5","name":"保卫萝卜"}]
代码如下:
private void parseJSONWithJSONObject(String jsonData) {
try { JSONArray jsonArray = new JSONArray(jsonData);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String id = jsonObject.getString("id");
String name = jsonObject.getString("name");
String version = jsonObject.getString("version");
Log.d("woider", "id is " + id);
Log.d("woider", "name is " + name);
Log.d("woider", "version is " + version);
} } catch (Exception e) {
e.printStackTrace();
}
}
首先获取JSON元素数组:JSONArray jsonArray = new JSONArray(jsonData);
其次循环获取每个元素:JSONObject jsonObject = jsonArray.getJSONObject(index);
每次循环保存名称相对应的值:String name = jsonObject.getString("name");
======================使用GSON========================
GSON是谷歌提供的一个API,它主要就是可以将一段JSON格式的字符串自动映射成一个对象,从而不需要手动编码进行解析。
但是GSON并没有被添加到Android官方的API中,因此如果需要使用这个功能的话,则必须在项目中添加一个GSON的Jar包。
首先要建立一个类容纳JSON中的数据,然后实例化 Gson 对象,并通过 fromJson() 方法获取JSON对象集合。
private void parseJSONWithGSON(String jsonData) {
Gson gson = new Gson();
List<App> appList = gson.fromJson(jsonData, new TypeToken<List<App>>() {
}.getType()); for (App app : appList) {
Log.d("woider", "id is " + app.getId());
Log.d("woider", "name is " + app.getName());
Log.d("woider", "version is " + app.getVersion());
}
}
最后,补上运行截图:
Android 解析JSON格式数据的更多相关文章
- 实现android上解析Json格式数据功能
实现android上解析Json格式数据功能,该源码转载于安卓教程网的,http://android.662p.com ,个人感觉还不错的,大家可以看看一下吧. package com.practic ...
- 解析json格式数据
实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...
- Android读取JSON格式数据
Android读取JSON格式数据 1. 何为JSON? JSON,全称为JavaScript Object Notation,意为JavaScript对象表示法. JSON 是轻量级的文本数据交换格 ...
- Android创建JSON格式数据
Android创建JSON格式数据 作为上一篇博客的补充,简单那解说了一下Android创建JSON格式数据的小Demo. 1. 创建JSON格式数据 对于Android创建JSON格式数据.因为An ...
- Android之JSON格式数据解析
查看原文:http://blog.csdn.net/hantangsongming/article/details/42234293 JSON:JavaScript 对象表示法(JavaScript ...
- 用GSON解析Json格式数据
GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用.如果要使用GSON的话,则要先下载gson-2.2.4.jar这个文件,如果是在Android项目中使用,则在Android项目的li ...
- $Java-json系列(一):用GSON解析Json格式数据
GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用.如果要使用GSON的话,则要先下载gson-2.2.4.jar这个文件,如果是在Android项目中使用,则在Android项目的li ...
- ObjectMapper用于将java对象转换为json格式数据以及JSONObject对象解析json格式数据
ObjectMapper objectMapper = new ObjectMapper(); //反序列化的时候如果多了其他属性,不抛出异常 objectMapper.configure(Deser ...
- Android中解析JSON格式数据常见方法合集
待解析的JSON格式的文件如下: [{"id":"5", "version":"1.0", "name&quo ...
随机推荐
- php装饰器模式完成文章编辑
<?php //文章父类 class BaseArt{ protected $content; protected $art; public function __construct($cont ...
- 三大WEB服务器对比分析(apache ,lighttpd,nginx)
一.软件介绍(apache lighttpd nginx) 1. lighttpd Lighttpd是一个具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点.lighttpd是众多 ...
- HTML5 web Form表单验证实例
HTML5 web Form 的开发实例! index.html <!DOCTYPE html> <html> <head> <meta charset=&q ...
- NopCommerce Url分析
using System; using System.Web; using System.Web.Routing; using Nop.Core; using Nop.Core.Data; using ...
- sublime设置
修改字体: "font_face": "Monaco", "font_size": 14.0
- linux shell中判断bash脚本输入的参数个数
看下面的一段程序. #!/bin/bash ]; then echo "参数个数为$#个" else echo "没有参数" fi
- winScp上传文件时,如何过滤制定文件
在用winScp上传文件时,有些文件不想上传到服务器上.怎么办呢? 比如我希望过滤.svn .git文件和目录怎么操作呢? 第一步:在菜单上选中选项,点击选项. 第二步,点击传输->编辑 第三步 ...
- Memcached存储命令 - add
Memcached add 命令用于将 value(数据值) 存储在指定的 key(键) 中. 如果 add 的 key 已经存在,则不会更新数据,之前的值将仍然保持相同,并且您将获得响应 NOT_S ...
- WAMP启动失败简单解决方法
一般情况下,直接选择安装,突然出现问题了:提示:msvcp110.dll或msvcr110.dll问题, 那么你直接复制这个来百度就行. 在百度会提示让你一键安装并且修复的. 或者你可能会看网上其他教 ...
- R-数据导入
目录 键盘输入 导入文本文件 导入Excel文件 访问数据库管理系统 键盘输入 > mydata <- data.frame(age=numeric(0), gender=characte ...