JSON数据解析 基础知识及链接收集

时间:2023-01-15 21:40:55

JSON数据解析学习

JSON介绍

  JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。

  JSON 是存储和交换文本信息的语法。类似 XML。但是JSON 比 XML 更小、更快,更易解析。

  JSON具有自我描述性,更易理解,易于人类阅读也易于机器生成和解析。

  JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。

JSON文件

  JSON 文件的文件类型是 ".json"

  JSON 文本的 MIME 类型是 "application/json"

JSON语法规则

  JSON 语法是 JavaScript 对象表示法语法的子集:

  数据在名称/值对中。

  数据由逗号分隔。

  花括号保存对象。

  方括号保存数组。

JSON值

  JSON 值可以是:

  数字(整数或浮点数)

  字符串(在双引号中)

  逻辑值(true 或 false)

  数组(在方括号中)

  对象(在花括号中)

  null

JSON数据解析 基础知识及链接收集

JSON的结构

  JSON有两种结构:对象(object)和数组(array)。

对象

  对象(object)以花括号包围,

  key:value形式构成一个键值对,一个对象可以包含多个键值对,每个键值对以逗号(,)和其他键值对分隔开,值如果是字符串则必须用括号,数值型则不需要。

JSON数据解析 基础知识及链接收集

  如下面的对象:

{ "firstName":"John" , "lastName":"Doe" }

数组

  数组以方括号包围。

  数组是的有序集合,值之间以逗号分隔(,),这个可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。

JSON数据解析 基础知识及链接收集

  如:

{
"employees":
[
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName":"Jones" }
]
}

参考资料

  介绍JSON:

  英文版:http://www.json.org/

  中文版:http://www.json.org/json-zh.html

  W3school JSON教程:

  http://www.w3school.com.cn/json/index.asp

  JSON in Java:

  http://www.json.org/java/index.html

  工具、库、源码下载:

  JSON-java源码:

  https://github.com/douglascrockford/JSON-java

  JSON-lib jar包:

  http://sourceforge.net/projects/json-lib/?source=directory

  google-gson:

  http://code.google.com/p/google-gson/

  还有JSON-Tools:

  http://sourceforge.net/projects/jsontools.berlios/?source=directory

JSON数据解析 基础知识及链接收集的更多相关文章

  1. JSON数据解析(转)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 本文将主要介绍在Android ...

  2. JSON数据解析(GSON方式) (转)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 在上一篇博文<Andro ...

  3. iOS - JSON 数据解析

     iOS - JSON 数据解析 前言 NS_CLASS_AVAILABLE(10_7, 5_0) @interface NSJSONSerialization : NSObject @availab ...

  4. iOS开发笔记3:XML&sol;JSON数据解析

    这篇主要总结在iOS开发中XML/JSON数据解析过程用到的方法.XML数据解析主要使用SAX方式的NSXMLParser以及DOM方式的GDataXML,JSON数据解析主要使用NSJSONSeri ...

  5. 多叉树结构:JSON数据解析(二)

    多叉树结构:JSON数据解析(二) 在上篇文章中提到了JSON数据解析的基本方法,但是方法效率太低,这里接着上篇文章写写如何利用多叉树结构,定义对象,实现JSON数据字段快速随机访问. JSON数据通 ...

  6. &lbrack;开源 &period;NET 跨平台 数据采集 爬虫框架&colon; DotnetSpider&rsqb; &lbrack;四&rsqb; JSON数据解析

    [DotnetSpider 系列目录] 一.初衷与架构设计 二.基本使用 三.配置式爬虫 四.JSON数据解析与配置系统 场景模拟 假设由于漏存JD SKU对应的店铺信息.这时我们需要重新完全采集所有 ...

  7. 浅谈JSON数据解析方法

    JSON数据解析 JSON是什么?? 如何把JSON数据解析出来 如何把一个字典转换为JSON JSON详细介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交 ...

  8. Silverlight项目笔记7&colon;xml&sol;json数据解析、TreeView、引用类型与数据绑定错误、图片加载、虚拟目录设置、silverlight安全机制引发的问题、WebClient缓存问题

    1.xml/json数据解析 (1)xml数据解析 使用WebClient获取数据,获取到的数据实例化为一个XDocument,使用XDocument的Descendants(XName)方法获得对应 ...

  9. iOS学习—JSON数据解析

      关于在iOS平台上进行JSON解析,已经有很多第三方的开源项目,比如TouchJson,JSONKit,SBJon等,自从iOS5.0以后,苹果SDK推出了自带的JSON解决方案NSJSONSer ...

随机推荐

  1. FreeCodeCamp练习笔记

    CSS样式表: 嵌套:body是最外层包围其他所有HTML元素(标签),其中的元素样式都可覆盖body的样式. 覆盖:同一元素有多个样式,位置靠后的样式覆盖位置靠前的样式. id:id与位置无关,可任 ...

  2. ORA-00600&colon; internal error code&comma; arguments&colon; &lbrack;kcblasm&lowbar;1&rsqb;&comma; &lbrack;103&rsqb;&comma; &lbrack;&rsqb;&comma; &lbrack;&rsqb;&comma; &lbrack;&rsqb;&comma; &lbrack;&rsqb;&comma; &lbrack;&rsqb;&comma; &lbrack;&rsqb;

    一ORACLE 10.2.0.5.0 标准版的数据库的告警日志出现ORA-00600错误,具体错误信息如下所示 Errors in file /u01/app/oracle/admin/SCM2/bd ...

  3. SharePoint 2013无代码实现列表视图的时间段动态筛选

    本文介绍两种为列表视图设置时间段筛选器的方法.其中,第一个方法用于SharePoint Server,第二个方法同时还能用于SharePoint Foundation. 方法一:日期筛选器Web部件 ...

  4. CenoOS 7环境下编译OpenJDK8

    一.准备工作 1.与编译jdk7的不同(如未编译过Jdk7可以不看) 1.1.不再使用"$make sanity"来检查编译环境,而是改用"$./configure&qu ...

  5. 个人总结——Beta阶段

    Beta总结 我们在beta 结束之后, 每位写一个博客, 回顾并总结自己的beta过程,哪些方面做的好的,哪些方面做得不足需要改进的 回答问题 分析在Alpha阶段自己提出的五个问题,针对每个问题, ...

  6. Spring Boot实战:模板引擎

    虽然现在很多开发,都采用了前后端完全分离的模式,即后端只提供数据接口,前端通过AJAX请求获取数据,完全不需要用的模板引擎.这种方式的优点在于前后端完全分离,并且随着近几年前端工程化工具和MVC框架的 ...

  7. datable中table&period;row&lpar;&rpar; not a funtion 解决方法

    解决办法一: 改为.DataTable({ (初始化时候) 解决办法二: 或者改为var data = myTable.api().row( this ).data();(获取值的时候)

  8. Linux 学习 &lpar;十一&rpar; 软件安装管理

    Linux软件安装管理 学习笔记 软件包简介 软件包分类: 源码包 :脚本安装包 二进制包(RPM 包.系统默认包) 源码包的优点: 开源,如果有足够的能力,可以修改源代码 可以*选择所需的功能 软 ...

  9. anaconda使用以及创建python3&period;7&plus;pytorch1&period;0虚拟环境以及Jupyter notebook初级使用

    查看所有已安装的软件包$ conda list# packages in environment at S:\Users\jiangshan\Anaconda3:## Name Version Bui ...

  10. Oracle 基本操作符

    1.一般操作符 (1)!= 不等于 select empno,ename,job from scott.emp where job!='manager' (2)^= 不等于 select empno, ...