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 相关文章推荐
10个新的最有前途的JavaScript框架
Mar 12 Javascript
javascript 模拟JQuery的Ready方法实现并出现的问题
Dec 06 Javascript
一样的table?不一样的table(可编辑状态table)
Sep 19 Javascript
java与javascript之间json格式数据互转介绍
Oct 29 Javascript
js中精确计算加法和减法示例
Mar 28 Javascript
windows8.1+iis8.5下安装node.js开发环境
Dec 12 Javascript
JS+CSS实现Li列表隔行换色效果的方法
Feb 16 Javascript
D3.js封装文本实现自动换行和旋转平移等功能
Oct 14 Javascript
Node.js批量给图片加水印的方法
Nov 15 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
Jul 24 Javascript
JavaScript实现原型封装轮播图
Dec 27 Javascript
vue实现登陆页面开发实践
May 30 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
ThinkPHP CURD方法之page方法详解
2014/06/18 PHP
PHP创建word文档的方法(平台无关)
2016/03/29 PHP
获取JavaScript用户自定义类的类名称的代码
2007/03/08 Javascript
IE不出现Flash激活框的小发现的js实现方法
2007/09/07 Javascript
javascript实现面向对象类的功能书写技巧
2010/03/07 Javascript
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
2016/03/11 Javascript
BootStrap表单时间选择器详解
2017/05/09 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
Javascript中Promise的四种常用方法总结
2017/07/14 Javascript
详解react-native-fs插件的使用以及遇到的坑
2017/09/12 Javascript
利用vue+elementUI实现部分引入组件的方法详解
2017/11/22 Javascript
js+springMVC 提交数组数据到后台的实例
2019/09/21 Javascript
vue cli3适配所有端方案的实现
2020/04/13 Javascript
解决Python pandas plot输出图形中显示中文乱码问题
2018/12/12 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
解决django中ModelForm多表单组合的问题
2019/07/18 Python
基于Python实现剪切板实时监控方法解析
2019/09/11 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
2019/11/11 Python
Python基础之函数原理与应用实例详解
2020/01/03 Python
Python可以实现栈的结构吗
2020/05/27 Python
HTML5教程之html 5 本地数据库(Web Sql Database)
2014/04/03 HTML / CSS
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
司机的工作范围及职责
2013/11/13 职场文书
幼教简历自我评价
2014/01/28 职场文书
团日活动策划书
2014/02/01 职场文书
领导干部考察材料
2014/02/08 职场文书
出纳员岗位职责
2014/03/13 职场文书
大学生活自我评价
2014/04/09 职场文书
爱牙日活动总结
2014/08/29 职场文书
小学少先队工作总结2015
2015/05/26 职场文书
2019年工作总结范文
2019/05/21 职场文书
HR必备:超全面的薪酬待遇管理方案!
2019/07/12 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书
Python Pandas读取Excel日期数据的异常处理方法
2022/02/28 Python