json数据解析.docVIP

  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文档。上传文档
查看更多
json数据解析

json数据解析 JSON:JavaScript Object Notation,但是独立于语言。类似XML,可以用来文本信息的存储和交换。 今天只说我学到的JSON在Android平台上的简单用法。 例如: {user:{id:1,name:cyn,psd:123456}},这就是一个简单的JSON的写法,如果要再java类中定义这样一个表达式,需要对这个符号进行转义,就不多说这个了,接下来说下我的内容。 分析{user:{id:1,name:cyn,psd:123456}}这个表达式,通过API的解释,我们可以得知JSON的结构: 1、JSON表达式定义在一对大括号{}内部,由一对大括号包裹。 2、JSON表达式由Name/Value Pairs组成,其中Name的值为不能重复的,不能为空的字符串,Value的值的类型可以有很多,可以是:数字(整数或浮点数)、字符串(在双引号中)、逻辑值(true 或 false)、数组(在方括号中)、对象(在花括号中)、NULL(此处的这个NULL不是指的空,这是JSONObject的一个属性,用来标记某个name没有值)这么多类型的任意的混合,但是value的值不能为null或者无穷大。 API中org.json这个包中提供了四个与JSON相关的类和一个Exceptions: JSONArray JSONObject JSONStringer JSONTokener JSONException 首先来了解下这几个类的作用。 JSONObject类系统中有关JSON定义的基本单元,包含一对儿(Name/Value)映射。对外部请求的响应体现为一个标准的字符串,最外被大括号包裹,其中的Name和Value被冒号”:”分隔例如{user:cyn}。其对于内部行为的操作格式,例如:初始化一个JSONObject实例,引用内部的put()方法添加数值:new JSONObject().put(user, cyn),在Key和Value之间是以逗号”,”分隔。API中这个类的方法主要为get,opt,put等,这三个方法的主要作用时获取或添加内容。 JSONArray API的解释为一组有序的值的序列。值可以是对象(在花括号中)、其他的数组(在方括号中)、数字(整数或浮点数)、字符串(在双引号中)、逻辑值(true 或 false)、可以为NULL和null,不能为无穷大或其他。 JSONStringer这个类可以帮助快速和便捷的创建JSON表达式。其最大的优点在于可以减少由于格式的错误导致程序异常,引用这个类可以自动严格按照JSON语法规则创建JSON表达式。每个JSONStringer实体只能对应创建一个JSON表达式。 JSONTokener这个类是系统提供的用来把JSON表达式解析成JSONObject或者JSONArray,我们基本上就用到这个类中的构造器和nextValue()这个方法。 JSONException:是json.org类抛出的异常信息。 下面看一个例子: 我们要处理这样的一个JSON表达式: {user:{id:001,name:cyn,psd:123456}}。 首先我们使用JSONStringer来定义出这个表达式: 简单代码如下: JSONStringer stringer = new JSONStringer(); JSONStringer stringer01 = new JSONStringer(); try { //如果构建对象需要首先调用.object(),key用来构建Name,value用来构建value,以endObject()结束构建 String s = stringer.object().key(id).value(1).key(name) .value(zhang).key(psd).value(123456).endObject().toString(); String sesult = stringer01.object().key(user).value(s).endObject().toString(); } catch (JSONException e) { e.printStackTrace(); } 我们得到的result就是构建出的表达式,可以通过下面代码进行解析。 JSONObject object = new JSONObject(result); IteratorString iterator = object.keys(); while (

文档评论(0)

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

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

1亿VIP精品文档

相关文档