JSON数据解析
1 JSON简介
1.1 使用JSON语法创建对象
var ride={
make:'yamaha',
model:'demo',
year:2005,
owner:{
name:'yue',
occupation:'worker'
}
}
1.2使用JSON语法创建数组
2 Java解析和构造JSON数据
2.1 所需要的依赖包
2.2 Java的基本实现
Employee类:
public class Employee {
private String name;
private int age; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} }
下面是关于JSON的一些基本操作
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map; import net.sf.json.JSONArray;
import net.sf.json.JSONObject; public class demo {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 创建JSON对象
JSONObject json = new JSONObject();
// 创建两个Map对象和一个List对象
Map<String, String> map1 = new HashMap<String, String>();
map1.put("name", "little");
map1.put("sex", "male");
map1.put("age", "23");
Map<String, String> map2 = new HashMap<String, String>();
map2.put("name", "big");
map2.put("sex", "male");
map2.put("age", "28");
List<Map> list = new ArrayList<Map>();
list.add(map1);
list.add(map2);
// 创建一个Employee对象
Employee em = new Employee();
em.setName("little");
em.setAge(23);
// 将Map转换成JSON数据
JSONArray ja1 = JSONArray.fromObject(map1);
// 将 List转换成JSON数据
JSONArray ja2 = JSONArray.fromObject(list);
// 将JavaBean转换成JSON数据
JSONArray ja4 = JSONArray.fromObject(em);
// 数组转换成JSON数据
String[] str = { "sk", "sk1", "sk2" };
JSONArray ja3 = JSONArray.fromObject(str);
System.out.println(ja1);
System.out.println(ja2);
System.out.println(ja3);
System.out.println(ja4);
// 构造JSON数据
json.put("map", ja1);
json.put("employee", ja2);
System.out.println(json);
// 解析JSON数据
JSONArray ja = json.getJSONArray("employee");
for (int j = 0; j < ja.size(); j++) {
System.out.println(((JSONObject) ja2.get(j)).get("name") + ","
+ ((JSONObject) ja2.get(j)).get("sex") + ","
+ ((JSONObject) ja2.get(j)).get("age"));
} } }
[{"sex":"male","age":"23","name":"little"},{"sex":"male","age":"28","name":"big"}]
["sk","sk1","sk2"]
[{"age":23,"name":"little"}]
{"map":[{"sex":"male","age":"23","name":"little"}],"employee":[{"sex":"male","age":"23","name":"little"},{"sex":"male","age":"28","name":"big"}]}
little,male,23
big,male,28
3 参考文献


JSON数据解析的更多相关文章
- [开源 .NET 跨平台 数据采集 爬虫框架: DotnetSpider] [四] JSON数据解析
[DotnetSpider 系列目录] 一.初衷与架构设计 二.基本使用 三.配置式爬虫 四.JSON数据解析与配置系统 场景模拟 假设由于漏存JD SKU对应的店铺信息.这时我们需要重新完全采集所有 ...
- JSON数据解析 基础知识及链接收集
JSON数据解析学习 JSON介绍 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式. JSON 是存储和交换文本信息的语法.类似 XML.但是JSON 比 ...
- 浅谈JSON数据解析方法
JSON数据解析 JSON是什么?? 如何把JSON数据解析出来 如何把一个字典转换为JSON JSON详细介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交 ...
- JSON数据解析(转)
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 本文将主要介绍在Android ...
- JSON数据解析(GSON方式) (转)
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 在上一篇博文<Andro ...
- iOS - JSON 数据解析
iOS - JSON 数据解析 前言 NS_CLASS_AVAILABLE(10_7, 5_0) @interface NSJSONSerialization : NSObject @availab ...
- iOS开发笔记3:XML/JSON数据解析
这篇主要总结在iOS开发中XML/JSON数据解析过程用到的方法.XML数据解析主要使用SAX方式的NSXMLParser以及DOM方式的GDataXML,JSON数据解析主要使用NSJSONSeri ...
- Silverlight项目笔记7:xml/json数据解析、TreeView、引用类型与数据绑定错误、图片加载、虚拟目录设置、silverlight安全机制引发的问题、WebClient缓存问题
1.xml/json数据解析 (1)xml数据解析 使用WebClient获取数据,获取到的数据实例化为一个XDocument,使用XDocument的Descendants(XName)方法获得对应 ...
- iOS学习—JSON数据解析
关于在iOS平台上进行JSON解析,已经有很多第三方的开源项目,比如TouchJson,JSONKit,SBJon等,自从iOS5.0以后,苹果SDK推出了自带的JSON解决方案NSJSONSer ...
- Android学习笔记之JSON数据解析
转载:Android学习笔记44:JSON数据解析 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种 ...
随机推荐
- Error : An error occurred while creating the WebJob schedule: Response status code does not indicate success: 409 (Conflict).
How to fix the error? the answer is simple switch from Free to Standard...
- 比较常用到的一些linux命令行
find ./ -type f -name "*.c" | xargs grep -l "tm_common_ctrl_init_chip_init" ...
- with CTE AS
CTE/表变量/Temp http://www.cnblogs.com/ziyeyimeng/articles/2366855.html
- CallBack实践。
第一:它的应用场景是什么? if you call me ,i will call back.目前我接触到两种需要回调的需求 1.系统管理平台登录,登录所需要的人员和部门数据都是在另一个基础信息系统中 ...
- jtree添加节点
利用Model添加了节点之后,需要reload树
- HTML之Hello World
之前学过一段时间的HTML相关知识,但是已经有将近一年多时间没有用过了,曾经学过的知识基本都忘记了,所以要从头开始学习. 例子:Hello World <!DOCTYPE html> &l ...
- 改变this指针的apply,call,bind的区别
apply.call 在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向. Jav ...
- 笔记——shell脚本学习指南
<shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...
- 4. 什么是AJAX
术语Ajax用来描述一组技术,它使浏览器可以为用户提供更为自然的浏览体验.在Ajax之前,Web站点强制用户进入提交/等待/重新显示范例,用户的动作总是与服务器的“思考时间”同步.Ajax提供与服务器 ...
- nginx,控浏览器缓存,前端优化方案
1,困惑 做web项目,对于开发者来说,一个最头痛的问题就是浏览器缓存,有缓存,js更改了,html更改了,发布服务器以后用户往往无法通过浏览器访问到最新的类容,需要用户主动去刷新页面, 因为一直做企 ...