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 nextSibling 与 getNextElement(node) 使用介绍
Oct 13 Javascript
页面图片浮动左右滑动效果的简单实现案例
Feb 10 Javascript
jQuery判断元素上是否绑定了指定事件的方法
Mar 17 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
Aug 06 Javascript
详解JS正则replace的使用方法
Mar 06 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
Apr 01 Javascript
AngularJS基础 ng-submit 指令简单示例
Aug 03 Javascript
JS实现颜色梯度与渐变效果完整实例
Dec 30 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
Sep 12 Javascript
vue组件实践之可搜索下拉框功能
Nov 25 Javascript
JavaScript单线程和任务队列原理解析
Feb 04 Javascript
浅谈vue项目,访问路径#号的问题
Aug 14 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 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
2014/06/12 PHP
php判断用户是否手机访问代码
2015/06/08 PHP
PHP连接MSSQL方法汇总
2016/02/05 PHP
PHP仿微信发红包领红包效果
2016/10/30 PHP
PHP常用字符串函数小结(推荐)
2018/08/05 PHP
Firefox中autocomplete=&quot;off&quot; 设置不起作用Bug的解决方法
2011/03/25 Javascript
javascript 得到文件后缀名的思路及实现
2020/05/09 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
详解JavaScript中的自定义事件编写
2016/05/10 Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
2016/11/29 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
2018/08/27 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
在vue项目中优雅的使用SVG的方法实例详解
2018/12/03 Javascript
微信小程序实现页面分享onShareAppMessage
2019/08/12 Javascript
layui table去掉右侧滑动条的实现方法
2019/09/05 Javascript
浅谈Python程序与C++程序的联合使用
2015/04/07 Python
使用Python3 编写简单信用卡管理程序
2016/12/21 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
2018/03/15 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
2019/01/29 Python
python+opencv像素的加减和加权操作的实现
2019/07/14 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
2019/10/24 Python
关于numpy数组轴的使用详解
2019/12/05 Python
keras之权重初始化方式
2020/05/21 Python
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
wordpress添加Html5的表单验证required方法小结
2020/08/18 HTML / CSS
Groupon比利时官方网站:特卖和网上购物高达-70%
2019/08/09 全球购物
采购主管的岗位职责
2013/12/17 职场文书
管理心得体会
2013/12/28 职场文书
2014年上半年工作自我评价
2014/01/18 职场文书
2014年社区庆元旦活动方案
2014/03/08 职场文书
学生安全责任书模板
2014/07/25 职场文书
公安学专业求职信
2014/07/27 职场文书
领导班子四风对照检查材料
2014/09/23 职场文书
幼儿园大班教师随笔
2015/08/14 职场文书
致创业的您:这类人不适合餐饮创业
2019/08/19 职场文书