JSON键值对序列化和反序列化解析


Posted in Javascript onJanuary 24, 2017

什么是JSON?

JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write and easy for machines to parse and generate. JSON is a text format that is completely language independent.

翻译:Json【javascript对象表示方法】,它是一个轻量级的数据交换格式,我们可以很简单的来读取和写它,并且它很容易被计算机转化和生成,它是完全独立于语言的。

例如获取到的json串有如下片段:

“language”: { 
“q”: “Q”, 
“a”: “A” 
}

要如何将该字符串快速转化成一个可以使用的对象呢?

示例代码:

JSONObject language = obj.optJSONObject("language");
if(language !=null ){
  try {
    HashMap<String,String> nickname = new Gson().fromJson(language.toString()
    , new TypeToken<HashMap<String, String>>(){}.getType());
  }catch (Exception e){
    HashMap<String,String> nickname = null;
  }
}

以上代码可以解决。

那么反过来,如何将对象反序列化呢?

示例代码:

Map<String, Number> map = new HashMap<String, Number>();  
  map.put("int", 123);
  map.put("long", 1234567890123456789L);
  map.put("double", 1234.5678D);
  map.put("float", 1.2345F);
  Type mapType = new TypeToken<Map<String, Number>>() {}.getType();
  Gson gson = new GsonBuilder().registerTypeAdapter(Number.class
  , new NumberTypeAdapter()).create();
  String json = gson.toJson(map, mapType);

以上所述是小编给大家介绍的JSON键值对序列化和反序列化解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
用JavaScript事件串连执行多个处理过程的方法
Mar 09 Javascript
老鱼 浅谈javascript面向对象编程
Mar 04 Javascript
jquery常用特效方法使用示例
Apr 25 Javascript
原生js实现的贪吃蛇网页版游戏完整实例
May 18 Javascript
javascript学习笔记整理(概述、变量、数据类型简介)
Oct 25 Javascript
浅析javascript中的事件代理
Nov 06 Javascript
js中利用tagname和id获取元素的方法
Jan 03 Javascript
JavaScript之underscore_动力节点Java学院整理
Jul 03 Javascript
使用canvas进行图像编辑的实例
Aug 29 Javascript
node前端开发模板引擎Jade的入门
May 11 Javascript
解决vue的 v-for 循环中图片加载路径问题
Sep 03 Javascript
微信头像地址失效踩坑记附带解决方案
Sep 23 Javascript
js自制图片放大镜功能
Jan 24 #Javascript
JS中绑定事件顺序(事件冒泡与事件捕获区别)
Jan 24 #Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
Jan 24 #Javascript
JavaScript解析JSON格式数据的方法示例
Jan 24 #Javascript
解决ajax不能访问本地文件问题(利用js跨域原理)
Jan 24 #Javascript
Jquery树插件zTree实现菜单树
Jan 24 #Javascript
bootstrap table之通用方法( 时间控件,导出,动态下拉框, 表单验证 ,选中与获取信息)代码分享
Jan 24 #Javascript
You might like
PHP实现Socket服务器的代码
2008/04/03 PHP
php skymvc 一款轻量、简单的php
2011/06/28 PHP
Yii使用ajax验证显示错误messagebox的解决方法
2014/12/03 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
2017/02/04 PHP
兼容ie、firefox的图片自动缩放的css跟js代码分享
2012/01/21 Javascript
js购物车实现思路及代码(个人感觉不错)
2013/12/23 Javascript
javascript数组操作总结和属性、方法介绍
2014/04/05 Javascript
跟我学习javascript的异步脚本加载
2015/11/20 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
基于javascript bootstrap实现生日日期联动选择
2016/04/07 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
2016/05/07 Javascript
由简入繁实现Jquery树状结构的方法(推荐)
2016/06/10 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
微信小程序中悬浮窗功能的实现代码
2019/08/02 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
vue 实现特定条件下绑定事件
2019/11/09 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
2020/08/13 Javascript
v-slot和slot、slot-scope之间相互替换实例
2020/09/04 Javascript
基于python实现微信模板消息
2015/12/21 Python
Pyecharts绘制全球流向图的示例代码
2020/01/08 Python
Python中zip()函数的解释和可视化(实例详解)
2020/02/16 Python
pandas分组聚合详解
2020/04/10 Python
Python在线和离线安装第三方库的方法
2020/10/31 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
台湾饭店和机票预订网站:Expedia台湾
2016/08/05 全球购物
世界上最悠久的自行车制造商:Ribble Cycles
2017/03/18 全球购物
数字漫画:comiXology
2020/06/13 全球购物
Java模拟试题
2014/11/10 面试题
公司年会抽奖活动主持词
2014/03/31 职场文书
简短的人生哲理(38句)
2019/08/13 职场文书
Python max函数中key的用法及原理解析
2021/06/26 Python
JS 4个超级实用的小技巧 提升开发效率
2021/10/05 Javascript
Win11查看设备管理器
2022/04/19 数码科技
Python加密与解密模块hashlib与hmac
2022/06/05 Python