json数据格式和object对象之间相互转换
2013-12-19 15:00
956 查看
android在与后台交互的时候经常需要解析数据和封装数据,本文讲述json数据解析为对象的过程和对象被封装为json数据的过程:
Object------------>json:
主要通过google提供Gson方法:
在使用Gson的时候还需要导入一个jar包
主要通过反射方式:
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; }
相关文章推荐
- JS对象与JSON格式数据相互转换
- JS对象与JSON格式数据相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- 前台js获取到后台json数据,eval解析json后,日期(object)对象转换为date日期格式显示
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换操作
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- JS对象与JSON格式数据相互转换(转)
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- JS对象与JSON格式数据相互转换
- JS对象与JSON格式数据相互转换
- JS对象与JSON格式数据相互转换(转)
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- C# JsonObject Json格式与Json对象相互转换
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- JS对象与JSON格式数据相互转换
- 解析JSON对象与字符串之间的相互转换(获取json数据转换为字符串,json传值方法)
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换