JSON及其在项目中的使用
来源:互联网 发布:网络交友论坛 编辑:程序博客网 时间:2024/05/20 22:04
JSON
一、简介
全称:JavaScript Ojbect Notation,JavaScript对象标记
功能:轻量级数据交换语言
语法严格
两种建立JS对象的方式
//方式一:通过functionfunction Person(xid,xname,xsal){this.id=xid;this.name=name;this.sal=xsal;}var p = new person(1,"张三",9500);//方式二:通过字面量,后面那一串字符串就是所谓的jsonvar p={id:1,name:"张三",sal=9500};
二、语法
- {} 对象
- [] 数组
- , 分隔属性
- : 左边为属性名,右边为属性值
属性名可用可不用引号括起,属性值为字符串一定要用引号括起
三、结构
JSON建构于两种结构:
- “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
- 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
四、使用
1. 说明
需要json-lib-2.1-jdk15.jar,但是Android SDK中内置了JSON解析器(不同于这个jar包,Android中的比较精简),所以不用导入。
2. Java项目中使用
需要导入以下jar包
//将整个对象转为json数组JSONArry ja = JSONArray.fromObject(Object);//只将对象中的某些属性转成JSON对象jsonConfig.setExcludes(String[] );//不参与转成JSON文本属性JSONObject ja = JSONObject.fromObject(Object,jsonConfig);
3. Android项目中使用
3.1 JSONObject
本质:是一个LinkedHashMap<String, Object>
构造方法
/*** 功能:构造方法,从json字符串中创建键值映射(JSON对象)* 参数json:json字符串* 返回值:JSONObject*/public JSONObject(String json) throws JSONException {this(new JSONTokener(json));}
获取和设置方法
//返回对应name的值,如果没有就返回nullObject opt(String name)//更精准的获取方法JSONObject optJSONObject(String name)JSONArray optJSONArray(String name)...//返回对应name的值,如果没有就抛出异常Object get(String name)//更精准的获取方法getJSONObject(String name)getJSONArray(String name)...//构建name和value的映射,如果已存在就覆盖,如果value为null就移除JSONObject put(String name, Object value)
3.2 JSONArray
本质:是一个ArrayList<Object>
构造方法
/*** 功能:构造方法,从json字符串中创建json数组* 参数json:json字符串* 返回值:JSONOArray*/public JSONArray(String json) throws JSONException {this(new JSONTokener(json));}
获取和设置方法
//返回对应index的值,如果没有就返回nullObject opt(int index)//更精准的获取方法JSONArray optJSONArray(int index)JSONObject optJSONObject(int index)...//返回对应index的值,如果没有就抛出异常Object get(int index)//更精准的获取方法getJSONObject(int index)getJSONArray(int index)...//往指定索引添加值,如果已存在就覆盖JSONArray put(int index, Object value)
五、XML与JSON
- XML:常用于配置文件,结构清晰,易读
- JSON:常用于传输数据,传输量小
1 0
- JSON及其在项目中的使用
- JSON在web项目中的使用
- 【Json】SimpleJson在项目中的使用
- json及其在django中的应用
- JSON 在java中的使用Json
- JSON 在C++中的使用
- Json在android中的使用
- Json在java中的使用
- json在java中的使用
- json 在Java中的使用
- json在springMVC中的使用
- json在java中的使用
- json在springMVC中的使用
- Json在Unity中的使用
- json:在js中的使用
- json在实际项目中的应用
- json在项目中的应用大总结
- Linux中ifreq 结构体分析和使用 及其在项目中的简单应用
- 黑马程序员 - OC语言 - NSString前后缀检查及搜索
- SD卡分区创建详细教程
- spring mvc 框架项目tomcat 移植到WebSphere
- ios搭一个简易计算器(利用masonry布局)
- 奥迪A9霸气登场 一改低调形象被称凶悍
- JSON及其在项目中的使用
- Android studio中如何使用Ndk(Jni)?
- freeMarker使用记录
- 开始学习C和C++
- Linux指令--tar,gzip
- 冒泡排序、选择排序的区别
- select、poll、epoll之间的区别总结
- java解析和生成xml文件的补充
- BIRCH(Balanced Iterative Reducing and Clustering Using Hierarchies)