Gson使用指南.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Gson使用指南

注:此系列基于Gson 2.4。 上一篇文章? HYPERLINK /?p=23862 你真的会用Gson吗?Gson使用指南(1)?我们了解了Gson的基础用法,这次我们继续深入了解Gson的使用方法。 本次的主要内容: Gson的流式反序列化 Gson的流式序列化 使用GsonBuilder导出null值、格式化输出、日期时间及其它小功能 一、Gson的流式反序列化 自动方式 Gson提供了fromJson()和toJson()?两个直接用于解析和生成的方法,前者实现反序列化,后者实现了序列化。同时每个方法都提供了重载方法,我常用的总共有5个。 这是我在上一篇文章开头说的,但我到最后也一直没有是哪5个,这次我给列出来之后,你就知道这次讲的是哪个了。 1 2 3 4 5Gson.toJson(Object); Gson.fromJson(Reader,Class); Gson.fromJson(String,Class); Gson.fromJson(Reader,Type); Gson.fromJson(String,Type);好了,本节结束! 看第2、4行,Reader懂了吧 手动方式 手动的方式就是使用stream包下的JsonReader类来手动实现反序列化,和Android中使用pull解析XML是比较类似的。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22String json = {\name\:\怪盗kidou\,\age\:\24\}; User user = new User(); JsonReader reader = new JsonReader(new StringReader(json)); reader.beginObject(); // throws IOException while (reader.hasNext()) { ????String s = reader.nextName(); ????switch (s) { ????????case name: ???????????? = reader.nextString(); ????????????break; ????????case age: ????????????user.age = reader.nextInt(); //自动转换 ????????????break; ????????case email: ????????????user.email = reader.nextString(); ????????????break; ????} } reader.endObject(); // throws IOException System.out.println();? // 怪盗kidou System.out.println(user.age);?? // 24 System.out.println(user.email); // ikidou@其实自动方式最终都是通过JsonReader来实现的,如果第一个参数是String类型,那么Gson会创建一个StringReader转换成流操作。 Gson流式解析 二、Gson的流式序列化 自动方式 Gson.toJson方法列表 所以啊,学会利用IDE的自动完成是多么重要这下知道了吧! 可以看出用红框选中的部分就是我们要找的东西。 提示:PrintStream(System.out) 、StringBuilder、StringBuffer和*Writer都实现了Appendable接口。 1 2 3Gson gson = new Gson(); User user = new User(怪盗kidou,24,ikidou@); gson.toJson(user,System.out); // 写到控制台手动方式 1 2 3 4 5 6 7 8JsonWriter writer = new JsonWriter(new OutputStreamWriter(System.out)); writer.beginObject() // throws IOException ????????.name(name).value(怪盗kidou) ????????.name(age).value(24) ????????.name(email).nullValue() //演示null ????????.endObject(); // throws IOException writer.flush(); // throws IOException //{name:怪盗kidou,a

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档