这两天一直在做一个需要进行价格对比的android小软件,本想用淘宝的api,才发现没有android的sdk,想自己解析,但发现又太复杂了,涉及到签名算法什么的,感觉比较纠结,所以找到了时时价的api,唯一的不好处是不能进行条形码扫描获得数据了,只能搜索或是输入商品的id了,软件已经做了一大部分,也不好再折腾了,只能这么讲究了。下面不多说了,直接进行json的解析。
json的简单介绍:
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解 析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。
JSON建构于两种结构:
- “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
- 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。
这些都是常见的数据结构。事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。
JSON具有以下这些形式:
对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
值(value)可以是双引号括起来的字符串(string)、数值(number)、true
、false
、 null
、对象(object)或者数组(array)。这些结构可以嵌套。
字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。
字符串(string)与C或者Java的字符串非常相似。
数值(number)也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。除去一些编码细节。
以上是json的简介,来源于http://www.json.org/json-zh.html。大家可以自己看一下。
下面正式进行json的解析:
分享到:
相关推荐
Gson是Google提供的一个开源库,能将Java对象转换为JSON字符串,同时也能将JSON字符串反序列化为Java对象。使用Gson库解析JSON,首先需要添加依赖到项目的build.gradle文件中: ```groovy dependencies { ...
本主题聚焦于“Android Studio解析JSON对象”,这是一个非常关键且实用的技能,因为JSON作为一种轻量级的数据交换格式,广泛应用于网络通信和数据存储。JSON对象可以方便地表示各种复杂的数据结构,包括数组、键值...
这个"android 动态解析获取json数据的键值对"的项目就是针对这种情况的一个实例,主要展示了如何在Eclipse环境下,不预先创建JSON键值对应的实体类,而是动态地解析JSON并将其内容显示在列表上。 首先,我们要理解...
本教程聚焦于老罗讲解的Android解析JSON数据的源码分析,这对于深入理解JSON处理以及优化应用程序性能至关重要。 首先,我们需要了解JSON的基本结构。JSON是一种基于键值对的格式,数据以键值对的形式存储,如{"key...
在“Android解析json速度对比”的测试中,我们通常会设置一个标准的JSON数据集,然后使用这三个库进行反序列化操作,并记录每种库所花费的时间。测试方法可能包括以下步骤: 1. **数据准备**:创建一个包含大量键值...
虽然题目要求不使用第三方库,但值得一提的是,Google提供的Gson库是JSON解析的强大工具,它可以将Java对象转换为JSON字符串,反之亦然。如果允许,推荐使用Gson,它简化了大量解析工作。 总结,Android中的JSON...
这个压缩包"Android应用源码之Android 解析json_dome.zip"提供了关于如何在Android应用中解析JSON的示例代码,对于学习Android开发中的网络数据处理非常有帮助。 首先,我们需要了解JSON的基本结构。JSON基于...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。 在 Android 中,解析 JSON 字符串可以分为两种形式:普通形式和带有数组形式。 普通形式 在普通...
2. **Android解析JSON的库** 在Android中,我们通常使用两种库来解析JSON数据: - `org.json`:这是Android SDK自带的库,提供了JSONObject和JSONArray类,可以方便地解析JSON对象和数组。 - `...
下面将详细阐述Android解析JSON的基本步骤和涉及的技术点。 首先,要理解JSON的结构。JSON由键值对组成,可以是对象(对象以大括号{}包围)或数组(数组以方括号[]包围)。例如: ```json { "name": "John", ...
在Android开发中,JSON(JavaScript Object Notation)是一...记住,理解和熟练运用JSON解析是Android开发者必备的技能之一。在实际项目中,可以根据需求选择合适的解析库,结合自定义的封装和解析方法,提高开发效率。
本篇将深入探讨如何在Android平台上使用org.json库解析JSON数据。 一、JSON基础知识 1. JSON数据结构:主要包括对象(Object)和数组(Array)。对象由键值对组成,用花括号{}包围;数组是一组有序的值,用方括号[]...
在“Android Json 解析demo”项目中,可能包含了创建JSON解析器的代码示例,以及如何在Android Studio中运行和测试这些功能的步骤。你可以通过查看项目中的JsonDemo文件来学习具体的实现细节,包括如何读取网络上的...
在这个场景中,我们将探讨如何在Android Studio中解析JSON数组,并将获取的数据展示在ListView上。这个过程对于任何初学者来说都是一个重要的学习点,因为它涉及到网络数据获取、JSON解析以及UI展示。 首先,我们...
无论是在Java后端还是Android前端,都能辅助开发者更方便地解析、验证和展示JSON数据。在实际开发过程中,熟练掌握这样的工具使用,能够显著提高开发效率,减少因格式问题引发的错误,让代码更加整洁,从而提升整体...
这个资料包包含了一个关于Android解析JSON数据的PPT和源码,可以帮助开发者深入理解和实践Android中如何处理JSON数据。 首先,我们要理解JSON的基本结构。JSON由键值对组成,键用引号括起来,后跟冒号,值可以是...
总之,在Android中解析JSON数据是应用程序与服务器交互的重要一环。熟练掌握Gson库和org.json库的使用,能够帮助开发者更高效地处理网络数据,提升应用性能。通过不断实践,你可以更加灵活地运用这些工具,解决各种...
2. 使用Gson实例解析JSON:有了JSON字符串和对应的数据模型类,我们可以使用Gson的fromJson()方法将JSON转换为Java对象。 ```java String jsonString = "{\"name\":\"John Doe\",\"age\":30,\"city\":\"New York\"}...
在本文中,我们将深入探讨如何使用Gson解析JSON数据,包括处理简单JSON和复杂的JSON结构。 首先,我们要了解JSON的基本概念。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,...
- 解析JSON:使用上述的JSON库解析JSON字符串,转换为Java对象。 - 创建适配器:自定义一个继承自BaseAdapter的类,用于将Java对象绑定到ListView的各个Item。 - 设置ListView:将适配器设置到ListView上,通过...