首页 > 学院 > 开发设计 > 正文

JSON解析

2019-11-09 17:44:47
字体:
来源:转载
供稿:网友

JSON(javaScript Object Notation) 比xml更节约流量,他是一个键一个值,而XML是两个键一个值。

通常来讲,若是手机电脑同时作为客户端,则数据传递多用XML,若只用手机(移动端)作为客户端,则数据传递用JSON

JSON不需要任何特殊的API或工具包,是Javascript的原生格式(理解为JavaScript的一种类型)

映射用“:”   名称:值

并列的数据之间用逗号“,” 分隔。名称1:值1,名称2:值2

映射的对象用大括号表示(“{}”) {名称1:值1,名称2:值2}

并列数据的集合(即数组)用方括号表示 ,方括号之间是逗号。

[

{名称1:值1,名称2:值2},

{名称1:值1,名称2:值2}

]

JSON支持的数据类型:string,number(int,float,double),object,array,true,false,null;  

String,Int,long,double,boolean,object,JSONArray可以直接通过get方法得到

用org.json框架来解析json,导入json-org.jar

常见的API

JSONObject jb=new JSONObject(String source);

Object get(String key);

int getInt(String key);

XXX getXXX(String key);

JSONArray getJSONArray(String key);

JSONArray jsArray=new JSONArray(String source);

获得某个数据

@Test	public void jsonTest() throws JSONException{		String jstring="{'name':'张三','age':'20'}";		JSONObject obj=new JSONObject(jstring);		String name=obj.getString("name");		System.out.PRintln(name);	} 遍历JSON数组,注意这里数组可以重复嵌套,一个数组也可以当作JSONObject

	@Test	public void jsonTest() throws JSONException{		String jstring="[{'name':'张三','age':'20'},{'name':'张四','age':'21'}]";		JSONArray array=new JSONArray(jstring);		for(int i=0;i<array.length();++i)		{			System.out.println("name:"+array.getJSONObject(i).getString("name")+"  age:"+array.getJSONObject(i).getInt("age"));		}	}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表