Android-JSON简单应用

JSON定义:

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition -December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java,JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(网络传输速度)。

Andorid中的使用:

1.封装JSON

Android中封装有类JSONObject,用于保存JSON。该类通过put方法将数据置入JSONObject中。JSONObject除存放int,boolean等基本类型外,还可存放JSONObject类型及JSONArray类型。具体使用代码如下:

btnTest.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				JSONObject jsonObject = new JSONObject();
				try {
					jsonObject.put("name", "JACK");

					JSONObject Tel = new JSONObject();
					Tel.put("homeTel", "123456");
					Tel.put("companyTel", "654321");
					jsonObject.put("Tel", Tel);

					JSONArray Address = new JSONArray();
					Address.put("NingBo");
					Address.put("Shanghai");
					jsonObject.put("Address", Address);
				} catch (JSONException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				etTest.setText(jsonObject.toString());
			}
		});

点击ReadJson按钮后系统将JSONObject显示在EditText中。效果图:

2.解析JSON

系统获取JSONObject对象后,利用getXXX函数,获取JSON中相应参数

Code:

btnTest.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				String JSON = "{\"name\":\"JACK\","
						+ "\"Address\":[\"Ningbo\",\"Shanghai\"],"
						+ "\"Tel\":{\"companyTel\":\"654321\",\"homeTel\":\"123456\"}}";
				String strOutput = "NULL";
				try {
					JSONObject jsonObject = new JSONObject(JSON);
					String strName = jsonObject.getString("name") + "\n";

					JSONArray jsonArray = jsonObject.getJSONArray("Address");
					String strAddress = jsonArray.getString(0) + ","
							+ jsonArray.getString(1) + "\n";

					JSONObject Tel = jsonObject.getJSONObject("Tel");
					String strCompanyTel = Tel.getString("companyTel");
					String strHomeTel = Tel.getString("homeTel");
					String strTel = strCompanyTel + "," + strHomeTel;
					strOutput = strName + strAddress + strTel;
				} catch (JSONException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				} finally {
					etTest.setText(strOutput);
				}
			}
		});

效果图:

时间: 2024-11-10 13:30:04

Android-JSON简单应用的相关文章

【转】android json解析及简单例子

JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. – Json.org JSON Vs XML 1.JSON和XML的数据可读性基本相同 2.JSON和XML同样拥有丰富的解析手段 3.JSON相对于XML来讲,数据的体积小 4.JSON与JavaScript的交互更加方便

android json解析及简单例子(转载)

android json解析及简单例子 JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. – Json.org JSON Vs XML 1.JSON和XML的数据可读性基本相同 2.JSON和XML同样拥有丰富的解析手段 3.JSON相对于XML来讲,数据的体积小 4.JS

Android JSON原生解析的几种思路,以号码归属地,笑话大全,天气预报为例演示

Android JSON原生解析的几种思路,以天气预报为例 今天项目中要实现一个天气的预览,加载的信息很多,字段也很多,所以理清了一下思路,准备独立出来写一个总结,这样对大家还是很有帮助的,老司机要开车了 涉及到网络,你就一定要先添加权限,准没错 <!--网络权限--> <uses-permission android:name="android.permission.INTERNET" /> 一.归属地查询(JSONObject) 这个也是最简单的一类Json

android 实现简单登录

一直知道WEB登录之后是通过session保持回话的,现在安卓却不知道怎么弄了. 研究了一下,记录一下.直接上代码: 服务器端: index.jsp <%@page import="java.io.PrintWriter"%> <%@page import="com.sun.org.apache.xml.internal.serialize.Printer"%> <%@page import="com.google.gson.

Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例

Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例 继上篇json解析,我用了原生的json解析,但是在有些情况下我们不得不承认,一些优秀的json解析框架确实十分的好用,今天我们为了博客的保质保量,也就不分开写,我们直接拿比较火的Gson和Fast-json来使用,末尾在进行一些分析 Android JSON原生解析的几种思路,以号码归属地,笑话大全,天气预报为例演示 一.各有千秋 两大解析库的东家都是巨头,一个来自于Google官方,一个来自阿里巴巴,我们这

jQuery使用cookie与json简单实现购物车功能

本文实例讲述了jQuery使用cookie与json简单实现购物车的方法.分享给大家供大家参考,具体如下: 1.生成一个cookie 用来存储商品的id  String类型 2.添加商品id的时候 把cookie转化成数组,并检查是否已经包含了.没有包含用js push重新生成新的数组. 3.把数组转化成String 用cookie存储. 以下是jquery对cookie和JSON的操作方法 $.cookie("cart","ids",{expires:-7,pat

移动端UI设计越来越流行的高斯模糊(Gaussian blur)和毛玻璃效果(磨砂效果),如何使用Android RenderScript简单实现?

高斯模糊(Gaussian blur)和毛玻璃效果(亦称磨砂效果),近两年在移动端的UI设计上越来越流行,特别是iOS手机上出现的较多,iOS系统也提供了相应的API帮助开发人员分分钟实现这两个效果.而Android系统则经历了一个漫长的探索过程,对图片的处理,从Java算法到NDK方式实现等,各种摸索层出不穷. 值得欣慰的是,Google终于在API 11中引入了 RenderScript ,一个强大的图片处理框架,帮助Android开发人员专注于图片处理算法而不是API的调度工作.使用Ren

SharePanel – Android上简单的一键分享,可分享到微信QQ和新浪微博

SharePanel – Android上简单的一键分享,可分享到微信QQ和新浪微博 SharePanel Android上简单的一键分享可分享到微信QQ和新浪微博 简介 效果图 代码块 简介 最近在写一个小程序长微博工具,效果就是编辑长微博,然后一键分享到微信.QQ和新浪微博. 一开始是想直接用Intent.createChooser(target, title)来做,后来一想,这样做不是很好啊,会有许多乱七八糟的应用弹出来,我想优先分享到微信.QQ和微博,于是找了点资料,将一键分享这个部分做

Android WIFI 简单用法

随着Wifi的普及,在开发App的时候对wifi的考虑越来越多了.例如程序的升级在wifi下可以省很多流量,在通信软件中的视频通话.可以实现高画质的传输等等,Android提供了WifiManager类来帮助开发者们管理Wifi.下面就简单来说一下WifiManager的简单用法把. 权限: 为了使用WfiManager 我们需要在Androidmanifest.xml 加入权限: //本例中使用了前两个.具体请按照需要添加权限. <uses-permission android:name=&quo

【转】Android Studio简单设置

原文网址:http://ask.android-studio.org/?/article/14 Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings --> Appearance --> Theme ,选择 Darcula 主题即可. 字体设置 系统字体设置 如果你的Android Studio界面中,中文显示有问题,或者选择中文目录显示有问题,或者想修改菜单栏的字体,可以这么设置.Settings -