json数据格式和object对象之间相互转换
来源:互联网 发布:分时博弈指标源码 编辑:程序博客网 时间:2024/05/22 01:53
android在与后台交互的时候经常需要解析数据和封装数据,本文讲述json数据解析为对象的过程和对象被封装为json数据的过程:
Object------------>json:
主要通过google提供Gson方法:
在使用Gson的时候还需要导入一个jar包
// 把对象转换成json数据private String initJsons() {String result = "";List<Persion> list = new ArrayList<Persion>();for (int i = 0; i < 5; i++) {Persion persion = new Persion();persion.setUsername("ii" + i);persion.setPassword("pp" + i);persion.setId(i);list.add(persion);}Gson gson = new Gson();result = gson.toJson(list);return result;}private String initJson() {String result = "";Persion persion = new Persion();persion.setUsername("111");persion.setPassword("222");persion.setId(1);Gson gson = new Gson();result = gson.toJson(persion);return result;}json-------------->Object:
主要通过反射方式:
// 把json数据转换成对象private Object initObject(@SuppressWarnings("rawtypes") Class cls,String json) throws InstantiationException, IllegalAccessException,JSONException {Object obj = cls.newInstance();JSONObject jsonObject = new JSONObject(json);Field[] fields = cls.getDeclaredFields();AccessibleObject.setAccessible(fields, true);for (Field field : fields) {String name = field.getName();String fieldType = field.getType().getSimpleName();if (!jsonObject.has(name)) {continue;}if ("String".equals(fieldType)) {field.set(obj, jsonObject.getString(name));} else if ("int".equals(fieldType)) {field.set(obj, jsonObject.getInt(name));} else if ("double".equals(fieldType)) {field.set(obj, jsonObject.getDouble(name));} else if ("boolean".equals(fieldType)) {field.set(obj, jsonObject.getBoolean(name));}}return obj;}
0 0
- json数据格式和object对象之间相互转换
- json和object之间相互转换
- Java object 和 json string之间的相互转换
- json字符串和json对象之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON数据和对象之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- JSON对象和字符串之间的相互转换
- 对SplitAction Bar 的认识
- 2014年节假日放假方案发布,全年假期依然维持11天不变
- Oracle常用函数 汇总
- 银行系统中输入密码的程序
- asp.net 获取客户端浏览器,ip地址,操作系统信息
- json数据格式和object对象之间相互转换
- c/c++常用算法(3) -- 数据结构(栈)
- 序列化和反序列化工具类
- Java验证码生成函数
- 关于UIView的autoresizingMask属性的研究
- 数据库-Oracle-嵌入式sql(一)
- Ibatis 大于小于符号
- div+CSS浏览器兼容问题整理(IE6.0、IE7.0 ,ie8 , FireFox..
- The Most Important Algorithms