java parcelable转json字符串,json 字符串转parcelable
https://blog.csdn.net/m940034240/article/details/81118091(java实体转map)
https://blog.csdn.net/sotong006/article/details/72354216(map转java实体)
http://hellorheaven.iteye.com/blog/842346
public class EntityUtils {//(一定要绑定,订阅成功才能进行对象转换)。/*** 实体类转Map** @param object* @return*/public static Map<String, Object> entityToMap(Parcelable object) {
// stu.writeToParcel(p, 0);Map<String, Object> map = new HashMap();for (Field field : object.getClass().getDeclaredFields()) {try {boolean flag = field.isAccessible();field.setAccessible(true);Object o = field.get(object);map.put(field.getName(), o);field.setAccessible(flag);} catch (Exception e) {e.printStackTrace();}}return map;}/*** 实体类转Map** @param* @return*/public static Map<String, Object> filterMap(Map<String, Object> map_filter) {Map map = new HashMap();map.put("macAddress", map_filter.get("macAddress"));map.put("did", map_filter.get("did"));map.put("ipAddress", map_filter.get("ipAddress"));map.put("productKey", map_filter.get("productKey"));map.put("productName", map_filter.get("productName"));map.put("remark", map_filter.get("remark"));map.put("alias", map_filter.get("alias"));map.put("productUI", map_filter.get("productUI"));
// String isLAN = map_filter.get("productUI");map.put("isLAN", map_filter.get("isLAN"));//(byte)((boolean)map_filter.get("productUI")?1:0)map.put("subscribed", map_filter.get("subscribed"));map.put("isBind", map_filter.get("isBind"));map.put("hasProductDefine", map_filter.get("hasProductDefine"));map.put("isDisabled", map_filter.get("isDisabled"));map.put("netStatus", map_filter.get("netStatus"));map.put("productType", map_filter.get("productType"));return map;}/*** Map转实体类** @param map 需要初始化的数据,key字段必须与实体类的成员名字一样,否则赋值为空* @return*/public static <T> T mapToEntity(Map<String, Object> map, Parcelable.Creator<T> creator) {// Parcel t = null;Parcel parcel = null;parcel = Parcel.obtain();
// parcel.writeMap(map);parcel.setDataPosition(0); // this is extremely important!
// parcel.writeMap(map);parcel.writeString((String) map.get("macAddress"));parcel.writeString((String) map.get("did"));parcel.writeString((String) map.get("ipAddress"));parcel.writeString((String) map.get("productKey"));parcel.writeString((String) map.get("productName"));parcel.writeString((String) map.get("remark"));parcel.writeString((String) map.get("alias"));parcel.writeString((String) map.get("productUI"));parcel.writeByte((byte) ((boolean) map.get("isLAN") ? 1 : 0));parcel.writeByte((byte) ((boolean) map.get("subscribed") ? 1 : 0));parcel.writeByte((byte) ((boolean) map.get("isBind") ? 1 : 0));parcel.writeByte((byte) ((boolean) map.get("hasProductDefine") ? 1 : 0));parcel.writeByte((byte) ((boolean) map.get("isDisabled") ? 1 : 0));// parcel.writeSerializable((GizWifiDeviceNetStatus) map.get("netStatus"));
// parcel.writeSerializable((GizWifiDeviceType) map.get("productType"));switch ((String) map.get("netStatus")) {case "GizDeviceOffline":parcel.writeSerializable(GizWifiDeviceNetStatus.GizDeviceOffline);break;case "GizDeviceOnline":parcel.writeSerializable(GizWifiDeviceNetStatus.GizDeviceOnline);break;case "GizDeviceControlled":parcel.writeSerializable(GizWifiDeviceNetStatus.GizDeviceControlled);break;case "GizDeviceUnavailable":parcel.writeSerializable(GizWifiDeviceNetStatus.GizDeviceUnavailable);break;}switch ((String) map.get("productType")) {case "GizDeviceNormal":parcel.writeSerializable(GizWifiDeviceType.GizDeviceNormal);break;case "GizDeviceCenterControl":parcel.writeSerializable(GizWifiDeviceType.GizDeviceCenterControl);break;case "GizDeviceSub":parcel.writeSerializable(GizWifiDeviceType.GizDeviceSub);break;}parcel.setDataPosition(0);
// String mac = parcel.readString();
// String did = parcel.readString();
// String productKey = parcel.readString();
// String productName = parcel.readString();
// String remark = parcel.readString();return creator.createFromParcel(parcel);}
java parcelable转json字符串,json 字符串转parcelable相关推荐
- JAVA中如何将一个json形式的字符串转为json对象或对象列表
import java.util.*; import java.text.SimpleDateFormat;import org.json.JSONObject; import org.json.JS ...
- Java对象转换成JSON对象/JSON对象转换成JSON字符串/JSON字符串转换成JS对象
文章目录 后端部分 前端部分 后端部分 Option op = new Option("海淀","hd");//java对象转换json对象 JSONObjec ...
- java语言中json转换,JSON字符串和JAVA语言对象的相互转换教程
本文主要向大家介绍了JSON字符串和JAVA语言对象的相互转换教程,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 一:字符串转换为对象:使用JSON.parse()方法 var st ...
- Java中json格式的字符串数组,list,json,map相互转换
日常开发中免不了和json格式的字符串数组,list,json,map打交道,因此这篇文章的着重点就是这四者的相互转换 1.json格式的字符串数组转list String json = " ...
- Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换
总结一下利用Json相关jar包实现Java对象和集合与Json字符串之间的互相转换: 1.创建的User类: package com.ghj.packageofdomain;public class ...
- 原来JAVA对象转JSON格式的字符串如此简单,返回来暂时不会做,留下纪念下
package info.moogens.mvc.tools.json;import java.lang.reflect.Array; import java.lang.reflect.Field; ...
- Java系列之:生成Json字符串
Java系列之:生成Json字符串 一.拼接Json字符串 二.使用JSONObject()生成字符串 一.拼接Json字符串 import com.alibaba.fastjson.JSONObje ...
- Java如何xml转json字符串_xml字符串转json字符串
XML字符串转JSON字符串网上的方法很多,这里主要推荐两种: 1.使用org.json包 jar地址:http://mvnrepository.com/artifact/org.json/json ...
- 【java json基础】字符串转json json转字符串 json数组转换 【java基础知识】【实用】【一看就会】
原文:[java json基础]字符串转json json转字符串 json数组转换 [java基础知识][实用][一看就会] 读书就是:从薄读厚,再从厚读薄的过程. 文比较长,各讲述如下: 若是新手 ...
- Java系列之:ObjectMapper实现对象转化为Json、集合转化为Json、Json转化为对象、Json转化为JsonNode、JsonNode转化为Json字符串
Java系列之:ObjectMapper实现对象转化为Json.集合转化为Json.Json转化为对象.Json转化为JsonNode.JsonNode转化为Json字符串 一.创建类Dataset ...
最新文章
- X3D中Profile如何翻译
- HTML5 手写板签名
- 【Android 性能优化】应用启动优化 ( 方法追踪代码模板 | 示例项目 | SD 卡访问权限 | 示例代码 | 获取 Trace 文件 | Android Studio 查看文件)
- 程序员面试题精选100题(16)-O(logn)求Fibonacci数列[算法]
- ABAP OLE相关的应用
- 【转】Unity3d:读取FBX中的动画
- win7讲述人修复_揭秘:干掉了win7!为何win10屡被吐槽它却“永世留芳”
- random.next_Java Random next()方法与示例
- 数字反转(洛谷-P1307)
- ubuntu14.10 LTS安装完成后鼠标闪烁问题
- C3P0连接池的基本配置与使用
- linux系统苹果刷机,iPhone上安装Android系统详细步骤
- 所有程序中的java在哪里设置密码_关于安全性:如何在桌面客户端应用程序(Java)中存储密码和敏感数据?...
- 匈牙利算法的MATLAB实现
- 联想Thinkpad W520评论
- MySQL笔记(LYH)
- cf不能全屏win7的解决方法_Win7系统不显示桌面的解决方法
- C语言设计多功能计算软件,多功能计算器的C语言实现
- 陶瓷设计灵感来源_网页设计师的色彩灵感来源
- “区块链60人”2022赋能中国区块链创新人物名单公布
热门文章
- 高德地图定位传值经纬度坐标为null,null
- DuiLib入门简明教程
- RadioKingTX18s遥控器(EdgeTx系统)搭配FlySky-ia6b接收机(富斯)在MissionPlanner配置pixhawk2.4.8失控保护功能
- ICMP协议(3层网络层协议:IP、ARP、ICMP)
- flex 最后一行 左对齐
- 专访中标软件曹冬:Moblin引发Linux革命
- Labwindows_cvi基于C语言创建Excel文件
- 智慧城市顶层设计范例:以数字家庭区块为例-P03
- 品质为先,服务不停,广州流辰信息公司恪守初心,匠心为民!
- 一个开发周期为6个月的中小型软件开发项目成本预算大致表