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 相关文章推荐
JS Replace()的高级使用方法介绍
Jun 29 Javascript
jQuery操作属性和样式详解
Apr 13 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
Jul 01 Javascript
JS弹出窗口的运用与技巧大全
Nov 01 Javascript
jQuery实现可移动选项的左右下拉列表示例
Dec 26 Javascript
react native 获取地理位置的方法示例
Aug 28 Javascript
详解使用React制作一个模态框
Mar 14 Javascript
Vue安装浏览器开发工具的步骤详解
May 12 Javascript
vue路由中前进后退的一些事儿
May 18 Javascript
简单分析js中的this的原理
Aug 31 Javascript
微信小程序工具函数封装
Oct 28 Javascript
JavaScript十大取整方法实例教程
Dec 03 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自定义函数call_user_func和call_user_func_array详解
2011/07/14 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
2017/07/19 PHP
FileUpload 控件 禁止手动输入或粘贴的实现代码
2010/04/07 Javascript
写给想学习Javascript的朋友一点学习经验小结
2010/11/23 Javascript
js中将HTMLCollection/NodeList/伪数组转换成数组的代码
2011/07/31 Javascript
jQuery实现菜单感应鼠标滑动动画效果的方法
2015/02/28 Javascript
Bootstrap作品展示站点实战项目2
2016/10/14 Javascript
原生js实现类似fullpage的单页/全屏滚动
2017/01/22 Javascript
javascript笔记之匿名函数和闭包
2017/02/06 Javascript
详解angularJS+Ionic移动端图片上传的解决办法
2017/09/13 Javascript
three.js实现3D视野缩放效果
2017/11/16 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
Vue源码中要const _toStr = Object.prototype.toString的原因分析
2018/12/09 Javascript
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
基于jquery实现彩色投票进度条代码解析
2020/08/26 jQuery
Python调用命令行进度条的方法
2015/05/05 Python
Python 字符串与二进制串的相互转换示例
2018/07/23 Python
Selenium元素的常用操作方法分析
2018/08/10 Python
10分钟教你用Python实现微信自动回复功能
2018/11/28 Python
浅谈Python中的全局锁(GIL)问题
2019/01/11 Python
python被修饰的函数消失问题解决(基于wraps函数)
2019/11/04 Python
Python 脚本实现淘宝准点秒杀功能
2019/11/13 Python
Python 脚本的三种执行方式小结
2019/12/21 Python
python 实现提取log文件中的关键句子,并进行统计分析
2019/12/24 Python
python与pycharm有何区别
2020/07/01 Python
详解pytorch中squeeze()和unsqueeze()函数介绍
2020/09/03 Python
俄罗斯眼镜网: optikaworld
2016/07/31 全球购物
师范毕业生求职自荐信
2013/09/25 职场文书
给面试官的感谢信
2014/02/01 职场文书
学前班学生评语
2014/12/29 职场文书
置业顾问岗位职责
2015/02/09 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
一般纳税人申请报告
2015/05/18 职场文书
2015年秋学期师德师风建设工作总结
2015/10/23 职场文书
css 中多种边框的实现小窍门
2021/04/07 HTML / CSS
Windows server 2012 配置Telnet以及用法详解
2022/04/28 Servers