java操作json
来源:互联网 发布:2017大数据公司排名 编辑:程序博客网 时间:2024/05/17 07:57
一、所需jar包(http://download.csdn.net/detail/huangzebiao007/6394831)
二、JSON 语法简介
· 数据在名称/值对中
· 数据由逗号分隔
· 花括号保存对象
· 方括号保存数组
示例:
1、一个有三个属性的User对象
{"id":1,"name":"hzb","age":24}
2、一个有2个User对象的List数组
[{"id":1,"age":24,"name":"hzb"},{"id":2,"age":23,"name":"cxd"}]
3、"employees" 是键,值是数组(数组中有三个对象)。每个对象代表一条关于某人(有姓和名)的记录。
{
"employees": [
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName":"Jones" }
]
}
三、java操作json示例
package com.hzb;import java.util.ArrayList;import java.util.List;import net.sf.json.JSONArray;import net.sf.json.JSONObject;import com.hzb.po.User;public class JsonTest {public static void main(String[] args) {List<User> users = new ArrayList<User>();User user = new User(1,"hzb",24);users.add(user);users.add(new User(2,"cxd",23));String message = JSONObject.fromObject(user).toString();//对象转换为json格式的字符串System.out.println(message);String messages = JSONArray.fromObject(users).toString();//数组集合转换为json格式的字符串System.out.println(messages);String json = "{\"id\":1,\"name\":\"hzb\",\"age\":24}";JSONObject obj = JSONObject.fromObject(json);//json格式的字符串转化为json对象,从而操作对象中的数据System.out.println(obj.getInt("id")+"::"+obj.getString("name")+"::"+obj.get("age").toString());}}package com.hzb.po;public class User { private int id; private String name; private int age; public User(){ } public User(int id, String name, int age){ this.id = id; this.name = name; this.age = age; } public int getId() { return id; } public void setId(int id) { this.id = id; } 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; } }运行结果:
{"id":1,"name":"hzb","age":24}
[{"id":1,"age":24,"name":"hzb"},{"id":2,"age":23,"name":"cxd"}]
1::hzb::24
四、对数组进行操作
JSONObject jsonObj= JSONObject.fromObject(message);JSONArray array = jsonObj.getJSONArray("ACard");String[] arrays = new String[array.size()]; for(int i=0;i<array.size();i++){ arrays[i]=array.getString(i); } JSONArray array = JSONArray.fromObject(str); Room[] rooms = new Room[array.size()]; Room room = null; JSONObject obj = null; for(int i=0;i<array.size();i++){ obj = array.getJSONObject(i); room = new Room(); room.setAntes(obj.getInt("antes")); room.setJid(obj.getString("jid")); room.setName(obj.getString("name")); room.setPrivateRoom(obj.getString("privateRoom")); room.setTime(obj.getLong("time")); rooms[i] = room; }
五、创建json字符串
JSONObject obj = new JSONObject();obj.put("seat", "A");obj.put("antes", 50);obj.put("jid", "123456789874@publicroom.qc-openfire");System.out.println(obj.toString());
- java操作JSON数据格式
- java 操作json
- Java操作json
- Java操作JSON数据
- java操作json
- java 操作JSON
- Java操作Json数组
- java js 操作 JSON
- java操作Json数据
- java中操作json
- [J2EE]java操作json
- java json操作
- java操作json类
- java json字符串操作
- Java JSON数据操作
- java JSON操作
- java中的JSON操作
- java中的JSON操作
- MyEclipse svn必备技能之常用菜单
- 一道面试题的思考
- spice server主表面(primary surface)创建过程
- 如何解压cpio.gz文件?
- Oracle Database 软件及补丁下载地址
- java操作json
- oracle 9i/10g/11g安装包和PATCH下载地址汇总
- 创业团队在哪里可以找到靠谱的 iOS 开发工程师?
- java中使用Servlet实现文件上传
- 为MyEclipse 9中的html/JSP编辑器添加代码自动提示
- 小Q书桌图标实现分析一
- Android中dip、px的详细说明
- 如何汉化 myeclipse 中的svn插件
- VC遍历窗体控件的实现