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 动态添加事件代码
Nov 30 Javascript
JavaScript之HTMLCollection接口代码
Apr 27 Javascript
jQuery打印指定区域Html页面并自动分页
Jul 04 Javascript
JavaScript的ExtJS框架中数面板TreePanel的使用实例解析
May 21 Javascript
详解Node.js模块间共享数据库连接的方法
May 24 Javascript
jQuery自定义图片缩放拖拽插件imageQ实现方法(附demo源码下载)
May 27 Javascript
基于JQuery实现的跑马灯效果(文字无缝向上翻动)
Dec 02 Javascript
深入理解ES6的迭代器与生成器
Aug 19 Javascript
webpack构建的详细流程探底
Jan 08 Javascript
Angular-UI Bootstrap组件实现警报功能
Jul 16 Javascript
VUE2.0 ElementUI2.0表格el-table自适应高度的实现方法
Nov 28 Javascript
vue使用refs获取嵌套组件中的值过程
Mar 31 Vue.js
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数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
2011/05/29 PHP
MySQL连接数超过限制的解决方法
2011/07/17 PHP
PHP获取文件夹内文件数的方法
2015/03/12 PHP
Yii框架分页实现方法详解
2017/05/20 PHP
Javascript 自适应高度的Tab选项卡
2011/04/05 Javascript
javascript学习笔记(十五) js间歇调用和超时调用
2012/06/20 Javascript
JavaScript使用循环和分割来替换和删除元素实例
2014/10/13 Javascript
JQuery报错Uncaught TypeError: Illegal invocation的处理方法
2015/03/13 Javascript
浅谈javascript中的Function和Arguments
2016/08/30 Javascript
微信小程序  简单实例(阅读器)的实例开发
2016/09/29 Javascript
浅谈js函数中的实例对象、类对象、局部变量(局部函数)
2016/11/20 Javascript
jQuery中弹出iframe内嵌页面元素到父页面并全屏化的实例代码
2016/12/27 Javascript
js实现移动端微信页面禁止字体放大
2017/02/16 Javascript
Vue 幸运大转盘实现思路详解
2019/05/06 Javascript
layui递归实现动态左侧菜单
2019/07/26 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
[40:03]RNG vs VG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python解析模块(ConfigParser)使用方法
2013/12/10 Python
python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件
2014/08/15 Python
Python实现JSON反序列化类对象的示例
2018/01/31 Python
python tkinter canvas使用实例
2019/11/04 Python
Python+appium框架原生代码实现App自动化测试详解
2020/03/06 Python
Tensorflow之MNIST CNN实现并保存、加载模型
2020/06/17 Python
matplotlib 范围选区(SpanSelector)的使用
2021/02/24 Python
日本最大的购物网站乐天市场国际版:Rakuten Global Market(支持中文)
2020/02/03 全球购物
门诊手术室工作制度
2014/01/30 职场文书
自荐信的基本格式
2014/02/22 职场文书
公司总经理岗位职责范本
2014/08/15 职场文书
中华在我心中演讲稿
2014/09/13 职场文书
销售经理工作失职检讨书
2014/10/24 职场文书
2014年度考核工作总结
2014/12/24 职场文书
闪闪红星观后感
2015/06/08 职场文书
导游词之介休绵山
2019/12/31 职场文书
MySQL中order by的使用详情
2021/11/17 MySQL
Win11黑色桌面背景怎么办?Win11黑色壁纸解决方法汇总
2022/04/05 数码科技
Centos系统通过Docker安装并搭建MongoDB数据库
2022/04/12 MongoDB