JSON格式数据处理

JSON格式数据处理
JSON格式数据处理

JSON格式数据处理

(湖南铁道冯向科 2016-04)

JSON格式数据处理 (1)

一、JSON概述 (1)

1.什么是JSON (1)

2.JSON与XML比较 (1)

二、JSON语法 (2)

1.JSON基本语法 (2)

2.JSON对象 (2)

3.JSON数组 (3)

三、Java处理JSON格式数据 (4)

1.引入处理JSON格式数据的jar包 (4)

2.处理JSON格式数据 (4)

四、Android处理JSON格式数据 (5)

1.Android对JSON处理的支持 (5)

2.处理JSON格式数据 (5)

一、JSON概述

1.什么是JSON

JSON是JavaScript对象表示法(JavaScript Object Notation)的意思。JSON是存储和交换文本信息的语法,类似XML;JSON是轻量级的文本数据交换格式,比XML更小、更快,更易解析。

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

JSON文件的文件类型是".json",JSON文本的MIME类型是"application/json"。2.JSON与XML比较

描述包含3 个员工记录(对象)的数组,使用XML描述如下:

使用JSON描述如下:

通过比较上述不同数据的描述发现,对每一个数据项,XML格式需要使用一对标签,如“”和“”,而JSON格式仅需要一个标签即可,即“firstName”。对于返回包含大量数据记录的Web服务返回值而言,使用JSON格式比使用XML格式需要的字符串长度要短得多。

二、JSON语法

1.JSON基本语法

JSON 语法是JavaScript对象表示法语法的子集。JSON的数据在名称/值对中,数据由逗号分隔,花括号保存对象,方括号保存数组。

JSON 数据的书写格式是:名称/值对。

上述语句等价于这条JavaScript 语句:

JSON 值可以是:数字(整数或浮点数)、字符串(在双引号中)、逻辑值(true 或false)、数组(在方括号中)、对象(在花括号中)或null

2.JSON对象

运行测试如下:

3.JSON数组

在上面的例子中,对象"employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。

运行测试如下:

三、Java处理JSON格式数据

1.引入处理JSON格式数据的jar包

JDK默认并不支持处理JSON格式数据,需要引入第三方包:commons-beanutils-1.7.0.jar

commons-collections-3.2.1.jar

commons-httpclient-3.1.jar

commons-lang-2.3.jar

commons-logging-1.1.1.jar

ezmorph-1.0.3.jar

json-lib-2.2.3-jdk15.jar

在Java项目的Build Path中配置对上述7个jar文件的引用。

与处理JSON格式数据相关的类在net.sf.json包中。

2.处理JSON格式数据

四、Android处理JSON格式数据

1.Android对JSON处理的支持

Android默认支持处理JSON格式数据,与处理JSON格式数据相关的类在org.json包中。也可以采用Java处理JSON格式数据的方式在Android程序中处理JSON格式数据。

2.处理JSON格式数据

在Android程序中处理JSON格式数据的代码如下:

后台转换JSON数据类型,前台解析JSON数据等等例子总结

后台转换JSON数据类型,前台解析JSON数据等等例子总结 JSON对象: JSONObject obj = new JSONObject(); obj.put("result", 0); obj.put("message", message); return obj.toJSONString(); 前台解析: Success:function(data){ var result = data.result; var message = data.message; } json对象中有json对象的写法: Objstr为一个JSONObject obj的String转换 private String getsuccess(String objstr,int number){ JSONObject obj = new JSONObject(); obj.put("result", 1); obj.put("obj", objstr); obj.put("number", number); return obj.toJSONString(); }

前台解析: Picjson为success返回的data var result = picjson.result; if (result==1) { var objdata = picjson.obj; var data = eval('(' + objdata + ')'); var num = picjson.number; picurl = null; showpiclist(data, num); } else{ alert(picjson.message); picurl = null; } list转成json对象 需要的包: https://www.360docs.net/doc/ec3427481.html,mons-lang.jar https://www.360docs.net/doc/ec3427481.html,mons-beanutils.jar https://www.360docs.net/doc/ec3427481.html,mons-collections.jar https://www.360docs.net/doc/ec3427481.html,mons-logging.jar

Json数据格式的使用方法入门教程

JSON 数据格式解析 和 XML 一样,JSON 也是基于纯文本的数据格式。由于 JSON 天生是为JavaScript 准备的,因此,JSON 的数据格式非常简单,您可以用 JSON 传输一个简单的 String,Number,Boolean,也可以传输一个数组,或者一个复杂的Object 对象。 String,Number 和 Boolean 用 JSON 表示非常简单。例如,用 JSON 表示一个简单的 String “ abc ”,其格式为: "abc" 除了字符 ",\,/ 和一些控制符(\b,\f,\n,\r,\t)需要编码外,其他 Unicode 字符可以直接输出。下图是一个 String 的完整表示结构: 图 1. String 的完整表示结构 一个 Number 可以根据整型或浮点数表示如下:

图 2. Number 的表示结构 这与绝大多数编程语言的表示方法一致,例如: 12345(整数) -3.9e10(浮点数) Boolean 类型表示为 true 或 false 。此外,JavaScript 中的 null 被表示为 null,注意,true、false 和 null 都没有双引号,否则将被视为一个String 。 JSON 还可以表示一个数组对象,使用 [] 包含所有元素,每个元素用逗号分隔,元素可以是任意的 Value,例如,以下数组包含了一个 String,Number,Boolean 和一个 null: Object 对象在 JSON 中是用 {} 包含一系列无序的 Key-Value 键值对表示的,实际上此处的 Object 相当于 Java 中的 Map,而不是Java 的 Class 。注意 Key 只能用 String 表示。 例如,一个 Address 对象包含如下 Key-Value:

JSON 数据格式

JSON 数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。 基础结构 JSON建构于两种结构: 1. “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组(associative array)。 2. 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 基础示例 简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。 表示名称 / 值对 按照最简单的形式,可以用下面这样的 JSON 表示 "名称 / 值对" :{ "firstName": "Brett" } 这个示例非常基本,而且实际上比等效的纯文本 "名称 / 值对" 占用更多的空间:firstName=Brett 但是,当将多个"名称 / 值对"串在一起时,JSON 就会体现出它的价值了。首先,可以创建包含多个"名称 / 值对"的记录,比如: { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" }

标准JSON格式定义与解析注意点

是一种轻量级地数据交换格式.它是基于语法标准地一个子集.是一种轻量级地数据交换格式.采用完全独立于语言地文本格式,可以很容易在各种网络、平台和程序之间传输.地语法很简单,易于人阅读和编写,同时也易于机器解析和生成. 要想熟练地操作数据,就要先了解数据: 地规则很简单:对象是一个无序地“‘名称值’对”集合.一个对象以“{”(左括号)开始,“}”(右括号)结束.每个“名称”后跟一个“:”(冒号);“‘名称值’对”之间使用“,”(逗号)分隔.文档来自于网络搜索 规则如下: 、映射用冒号(“:)表示.名称:值 、并列地数据之间用逗号(“,”)分隔.名称:值,名称:值 、映射地集合(对象)用大括号(“{}”)表示. { 名称:值, 名称:值 } 、并列数据地集合(数组)用方括号(“[]”)表示. [ {名称:值,名称:值}, {名称:值,名称:值} ] 、元素值可具有地类型:, , , , , 文档来自于网络搜索 注意:、用冒号(而不是等号)来赋值.每一条赋值语句用逗号分开.整个对象用大括号封装起来.可用大括号分级嵌套数据.文档来自于网络搜索 、对象描述中存储地数据可以是字符串,数字或者布尔值.对象描述也可存储函数,那就是对象地方法. 、主要有两种数据结构 ()由–对组成地数据结构.这种数据结构在不同地语言中有不同地实现. 例如:在中是一个对象.而在中是一种结构语言中是,其它地语言中可能为、等.文档来自于网络搜索 ()有序集合、这种数据结构在不同语言中可能有、、数组和序列等实现. 、中数据格式地处理 <>转 [] <>( ) {

{ (()); 文档来自于网络搜索( ()) { (, ); (()); } } { ; } } 转<> [] ( ) { { (); 文档来自于网络搜索 ( (())) 文档来自于网络搜索 { (); } } { ; } } 转 [] ( ) { ( ) { ""; } ();

不同json数据格式之间的转换

待转换的json数据格式为: [{ "id":1, "text":"菜单", "children":[{ "id":11, "text":"菜单1", "state":"closed", "children":[{ "id":111, "text":"测试11", "attributes":{ "key":"Custom Attribute1" } },{ "id":112, "text":"测试12", "attributes":{ "key":"xx" }, },{ "id":113, "text":"测试13", "attributes":{ "key":"Custom Attribute1" } }] },{ "id":12, "text":"菜单2", "children":[{ "id":121, "text":"测试21", "attributes":{ "key":"Custom Attribute1" } },{ "id":122, "text":"测试22", "attributes":{ "key":"Custom Attribute1" } },{ "id":123,

"text":"测试23", "attributes":{ "key":"Custom Attribute1" } }] }] }] 该json格式为jQuery easyui tree的json数据格式,先要把它转换成微信自定义菜单的json 数据格式,如: { "button": [ { "name": "菜单1", "sub_button": [ { "type": "click", "name": "测试11", "key": "Custom Attribute1", "sub_button": [ ] }, { "type": "click", "name": "测试12", "key": "xx", "sub_button": [ ] }, { "type": "click", "name": "测试13", "key": "Custom Attribute1", "sub_button": [ ] } ] }, { "name": "菜单2", "sub_button": [ { "type": "click", "name": "测试21", "key": "Custom Attribute1", "sub_button": [ ] }, {

js读取解析JSON数据

js读取解析JSON数据 各位读友大家好!你有你的木棉,我有我的文章,为了你的木棉,应读我的文章!若为比翼双飞鸟,定是人间有情人!若读此篇优秀文,必成天上比翼鸟! js读取解析JSON数据js读取解析JSON数据JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是JavaScript 原生格式,这意味着在JavaScript 中处理JSON数据不须要任何特殊的API 或工具包。本文主要是对JS操作JSON的要领做下总结。在JSON中,有两种结构:对象和数组。1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’对”之间运用“,”(逗号)分隔。名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如:var o={“xlid”:”cxh”,”xldigitid”:123456,”topscore”:2000,”topplaytime”:”2009-08-20”};2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间运用“,”(逗号)分隔。例如:var jsonranklist=[{“xlid”:”cxh”,”xldigitid”:123456,”topscore”:2000,”top playtime”:”2009-08-20”},{“xlid”:”zd”,”xldigitid”:123456,”topscore ”:1500,”topplaytime”:”2009-11-20”}];为了方便地处理JSON数据,JSON提供了json.js包,下载地址:https://www.360docs.net/doc/ec3427481.html,/json.js在

JSON的List数据封装解析方案

对象封装成为List和JSON解析成封装有对象的List 1、封装方法类(将JSONArray放入JSONObject中发给客户端) package com.mlp.tools; import java.util.ArrayList; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import https://www.360docs.net/doc/ec3427481.html,ebean.Messages; import https://www.360docs.net/doc/ec3427481.html,ebean.Resources; import https://www.360docs.net/doc/ec3427481.html,ebean.Types; public class ListToJSONArray { public static JSONArray setListToJR(ArrayList list){ JSONObject json=null; JSONArray ja=new JSONArray(); for(int i=0;i list){ JSONObject json=null;

数据交换格式XML和JSON对比

数据交换格式XML和JSON对比 1.简介: XML:extensible markup language,一种类似于HTML的语言,他没有预先定义的标签,使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。XML是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用.具体的可以问Google或百度。相比之JSON这种轻量级的数据交换格式,XML可以称为重量级的了。 JSON : JavaScript Object Notation 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集。JSON概念很简单,就是服务器直接生成Javascript语句,客户端获取后直接用eval()方法来获得这个对象,这样就可以省去解析XML的性损失 2.对比 1)数据交换格式中XML是重量级的,JSON是轻量级的。这个体现在解析上。 XML目前设计了三种解析方式:DOM、SAX和pull; SAX不需要整个读入文档就可以对解析出的内容进行处理,是一种逐步解析的方法。程序也可以随时终止解析。这样,一个大的文档就可以逐步的、一点一点的展现出来,所以SAX适合于大规模的解析。这一点,JSON目前是做不到得。 所以,JSON和XML的轻/重量级的区别在于:JSON只提供整体解析方案,而这种方法只在解析较少的数据时才能起到良好的效果;而XML提供了对大规模数据的逐步解析方案,这种方案很适合于对大量数据的处理。

androidjson解析及简单例子(转载).

JSON 的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持,从而可以在不同平台间进行数据交换。 JSON 采用兼容性很高的文本格式,同时也具备类似于 C 语言体系的行为。– https://www.360docs.net/doc/ec3427481.html, JSON Vs XML 1.JSON 和 XML 的数据可读性基本相同 2.JSON 和 XML 同样拥有丰富的解析手段 3.JSON 相对于 XML 来讲,数据的体积小 4.JSON 与 JavaScript 的交互更加方便 5.JSON 对数据的描述性比 XML 较差 6.JSON 的速度要远远快于 XML android2.3提供的 json 解析类 android 的 json 解析部分都在包 org.json 下,主要有以下几个类: JSONObject :可以看作是一个 json 对象 , 这是系统中有关 JSON 定义的基本单元, 其包含一对儿 (Key/Value数值。它对外部 (External:应用 toString(方法输出的数值调用的响应体现为一个标准的字符串(例如:{"JSON": "Hello, World"},最外被大括号包裹,其中的 Key 和 Value 被冒号 ":"分隔。其对于内部 (Internal行为的操作格式略微,例如:初始化一个 JSONObject 实例,引用内部的 put(方法添加数值:new JSONObject(.put("JSON", "Hello, World!", 在 Key 和 Value 之间是以逗号 "," 分隔。Value 的类型包括:Boolean 、 JSONArray 、 JSONObject 、 Number 、 String 或者默认值 JSONObject.NULL object 。

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)。这些结构可以嵌套。

java中解析json的三种方式

//第一种 public void jsonTx() { String json = "{'status':200,'message':'查询成功','data':[{'id':1,'name':'name1','describe':'第一条数据'}]}"; JSONObject data = new JSONObject(json); int status = data.optInt("status"); JSONArray data1 = data.getJSONArray("data"); if (status==200) { for(int i=0;i

js操作json

JS操作JSON总结 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON 是JavaScript 原生格式,这意味着在JavaScript 中处理JSON数据不须要任何特殊的API 或工具包。 本文主要是对JS操作JSON的要领做下总结。 在JSON中,有两种结构:对象和数组。 1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“…名称/值? 对”之间运用“,”(逗号)分隔。名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如: var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"}; 2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间运用“,”(逗号)分隔。 例如: var jsonranklist=[{"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"},{"xlid":"zd","xldigitid":12 3456,"topscore":1500,"topplaytime":"2009-11-20"}]; 为了方便地处理JSON数据,JSON提供了json.js包,下载地址:https://www.360docs.net/doc/ec3427481.html,/json.js 在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如: JSON字符串: var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象: var str2 = { "name": "cxh", "sex": "man" }; 一、JSON字符串转换为JSON对象 要运用上面的str1,必须运用下面的要领先转化为JSON对象: //由JSON字符串转换为JSON对象 var obj = eval('(' + str + ')'); 或者 var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

JSONObject详解及用法

一、JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写。同时,也易于机器解析和生成。 二、JSON数据格式解析:和XML一样,JSON也是基于存文本的数据格式。您可以用JSON传输一个简单的String、Number、Boolean,也可以传输一个数组或者一个复杂的Object对象。例如:1、用JSON表示一个简单String “abc”,其格式为:”abc”。除了字符“,\,/ 和一些控制符(\b,\n,\t 等)需要编码外,其他Unicode字符可以直接输出。 2、用JSON表示一个数组对象,使用“[ ]“包含所有元素,每个元素用逗号分隔,元素可以使任意的value,例如,一下数组包含了一个String、Number、Boolean、和一个null:[“abc”,123,false,null]。 3、Object对象在JSON中用“{ }“包含一系列无序的Key-Value键值对表示,实际上此处的Object相当于Java 中的Map。注意Key只能用String表示。例如:一个Address对象包含如下Key-Value:{“city”:”beijing”,”street”:”chaoyang”,”postcode”:100025}。 三、JAVASCRIPT处理JSON数据Function demo(){ var v={“name”:”SMITH”,”address”: {“city”:”beijing”,”street”:”chaoyang”,”postcode”:100025}}; document.write(https://www.360docs.net/doc/ec3427481.html,); document.write(v.address.city); } 四:JSON和XML的比较XML和JSON都是用结构化方法来标记数据,下面来做一个简单的比较。 中国 黑龙江 哈尔滨 大庆 用JSON表示如下:{ name:”中国”,province:[ { Name:”黑龙江”,citys:{“哈尔滨”,”大庆”} } ]

json数据解析

这个方法是参考 https://www.360docs.net/doc/ec3427481.html,/networking-database-problems-f29/connecting-to-mysql-database-t50063.html 国外老外的一些经验所得。这里我总结一下要点: 1、需要一个mysql数据库,这个怎么搞出来,大家觉得有问题先学学mysql再回来接着看。 2、需要一个php操作mysql数据库的脚本,上传到服务器地址 3、需要修改Android的manifest文件,入网许可!! 一、首先我们假如已经把MYSQL数据库建立好了,写一个PHP操作文件上传到服务器访问地址 [php]view plaincopyprint? 1 稍微解析一下上面PHP内容, [php]view plaincopyprint? 10$q=mysql_query("SELECT * FROM user_info WHERE uName ='".$_REQUEST['name']."'"); 这句当中 [php]view plaincopyprint? 11.$_REQUEST['name']. 就表示要从android里面输入到这里的一个键值对的值,id为name,下面我们 写Android程序会再说明一下。 [php]view plaincopyprint?

JSON_API说明

自定义JSON数据格式详解:手机APP侧使用说明 Requset ? { “KeyId” : “string” } 此数据格式,为客户端请求与服务器建立交互密钥连接使用,使用明文传输,不需要加密。KeyId : 为插在设备上面的标识Id号码 获取KeyId需要调用的函数依次如下: Java_cpk_com_jni_TCard_Open 打开外接TF卡设备 (JNIEnv *jenv, jclass jc, jint pinType, jbyteArray jpin, jint pinLen) 输入参数如下: pinType : 1 超级用户 2 普通用户使用普通用户打开设备 jpin : 8个0x31 pinLen : 8 JNICALL Java_cpk_com_jni_TCard_GetCertId (JNIEnv *jenv, jclass jc, jint keyId) 输入参数如下: keyId的序列号:统一传入0x00 返回值:KeyId号码 调用如上两个函数就可以获取到外接TF卡设备的KeyId号码 Request_result ? { “Public_key” : “string”, “Private_key” : “string” } 当客户端发送Request请求过来时候,服务器会生成一个随机数a,利用随机数a作为标识Id,生成随机数a的公私钥对,Public_key字段为随机数a的公钥,Private_key字段为随机数a的私钥,此数据通信的时候,使用客户端发送过来的标识Id的公钥加密。 解密上面格式的数据使用如下函数: JNIEXPORT jbyteArray JNICALL Java_cpk_com_jni_TCard_Decrypt (JNIEnv *jenv, jclass jc, jint keyId, jbyteArray jcipher, jint cipherLen) 输入参数解释如下: keyId: 序列号统一传入0x00 jcipher: 从服务器获取到的密文数据 cipherLen: 密文数据的长度

Json解析详细教程

Json 解析详细教程 1、JSON(JavaScript Object Notation) 定义: 轻量级的数据交换格式,具有良好的可读和便于快速编写的 特性。业内主流技术为其提供了完整的解决方案(有点类似 于正则表达式,获得了当今大部分语言的支持) ,从而可以 在不同平台间进行数据交换。 JSON 采用兼容性很高的文本 { "name":"小猪","age":20 } Array Array 是值(value )的有序集合。 [value , value , value ] 值(value )可以是双引号括起来的字符串(string )、数值 (number )、true 、false 、null 、对象(object )或者数组 (array )。 这些结构可以嵌套。 字符串(string )是由双弓 包围的任意数量 Unicode 字符的集合,使用反斜线转义。 个字符(character )即一个单独的字符串(character string )。 例如: \ + " \ / b f n r t u 进行转义。 例子 1: Array 里 格式,同时也具备类似于 C 语言体系的行为。 —https://www.360docs.net/doc/ec3427481.html, 2、JSON 的结构: (1) Name/Value Pairs 无序的):类 似所熟知的 Keyed list 、Hash table 、Disctionary 和 Associative array 。在Android 平台中同时存在另外一个类 "Bundle" ,某 种程度上具有相似的行为。 ⑵Array (有序的):一组 有序的数据列表。 对象对象是一个无序的 Name/Value Pairs 集合。 { name:value , name:value , name:value . }例子:

JSON数据格式

JSON数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格 式。JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。 基础结构 JSON建构于两种结构: 1. “名称/值”对的集合(A collection of name/value pairs )。不同的语言 中,它被理解为对象(object),记录(record),结构(struct ),字典(dictionary ),哈希表(hash table ),有键列表(keyed list ),或者关联数组 (associative array )。 2. 值的有序列表(An ordered list of values )。在大部分语言中,它被理解为数组(array )。 基础示例 简单地说,JSO N可以将JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从Web客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且JSON可以表示比"名称/值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。 表示名称/值对 按照最简单的形式,可以用下面这样的JSON表示"名称/值对": { "firstName": "Brett" } 这个示例非常基本,而且实际上比等效的纯文本"名称/值对"占用更多的空 [间:firstName=Brett 但是,当将多个"名称/值对"串在一起时,JSON就会体现出它的价值了。首先, 可以创建包含多个"名称/值对"的记录,比如: { "firstName": "Brett", "lastName":"McLaughli n", "email": "aaaa" } 从语法方面来看,这与"名称/值对"相比并没有很大的优势,但是在这种情况下JSON更容易使用,而且可读性更好。例如,它明确地表示以上三个值都是同一记录的一部分;花括号使这些值有了某种联系。

用jquery解析JSON数据的方法

用jquery解析JSON数据的方法 用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式的字符串的形式,对于利用JSONObject等插件封装的JSON对象,与此亦是大同小异,这里不再做说明。这里首先给出JSON字符串集, 用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery 请求后返回的结果是json对象,这里考虑的都是服务器返回JSON 形式的字符串的形式,对于利用JSONObject等插件封装的JSON对象,与此亦是大同小异,这里不再做说明。 这里首先给出JSON字符串集,字符串集如下: 代码如下: var data=" { root: [ {name:'1',value:'0'}, {name:'6101',value:'北京市'}, {name:'6102',value:'天津市'}, {name:'6103',value:'上海市'}, {name:'6104',value:'重庆市'}, {name:'6105',value:'渭南市'}, {name:'6106',value:'延安市'}, {name:'6107',value:'汉中市'}, {name:'6108',value:'榆林市'}, {name:'6109',value:'安康市'}, {name:'6110',value:'商洛市'} ] }"; 这里以jquery异步获取的数据类型——json对象和字符串为依据,分别介绍两种方式获取到的结果处理方式。 1.对于服务器返回的JSON字符串,如果jquery异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,方式不是太麻烦,就是将该字符串放于eval()中执行一次。这种方式也适合以普通javascipt方式获取json对象,以下举例说明: var dataObj=eval("("+data+")");//转换为json对象 alert(dataObj.root.length);//输出root的子对象数量 $.each(dataObj.root,fucntion(idx,item){ if(idx==0){ return true; }

处理格式数据的通用类

java处理JSON格式数据的通用类-每天进步一点点-我的搜狐 一个java处理JSON格式数据的通用类 分类:JSON 2013-04-27 18:00 阅读(19)评论(0) 原始的json方法 response.setContentType("text/html;charset=UTF-8"); response.setHeader("Cache-Control","no-cache"); JSONObject json = new JSONObject();//用于存放最后返回的json变量JSONArray jsonal = new JSONArray();//用于存放json的列表 JSONObject jsonobj = new JSONObject();//用于存放列表中的单条数据 try{ for(int i=0;i<10;i++){ //把列表中的每一列的每个值赋给jsonobj jsonobj.put("id", "编号"); jsonobj.put("title", "标题"); jsonobj.put("author", "作者"); jsonobj.put("time", "时间"); //把已经赋值过的jsonobj(即单条数据)放到列表里 jsonal.add(jsonobj); } json.put("list", jsonal);//把这个列表放到json里面用于最后返回输出 }catch(Exception e){ e.printStackTrace(); } response.getWriter().write(json.toString());//把json值输出返回到页面上这里是字符串的形式我前台是用js接收来解析的 别人写的工具类:

JS解析JSON数据及取值的用法

JS解析JSON数据及取值的一些用法 <%@ page contentType="text/html;charset=GBK" language="java" %> JS解析JSON数据

JS解析JSON数据测试界面

相关文档
最新文档