解析json的方式
一、Javascrip操作json
原始方式:
var str1 = '{ "name": "jacun", "addr": "bj" }';
var data=eval("("+str1+")");//转换为json对象
alert (data.name);//会显示出jacun
浏览器自带原生JSON对象,提供JSON.parse()方法解析JSON:
if( typeof( str) === 'string' ) {
return JSON.parse( str);
} else {
return str;
}
二、json操作json
//由JSON字符串转换为JSON对象
var obj = eval('(' + str + ')'); var obj = str.parseJSON(); var obj = JSON.parse(str);
可以运用 toJSONString()或者全局要领 JSON.stringify()将JSON对象转化为JSON字符串
var last=obj.toJSONString(); //将JSON对象转化为JSON字符 var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
三、JQuery获取json
jQuery.getJSON(url,data,success(data,status,str))
url 必需。规定将请求发送的哪个 URL。
data 可选。规定连同请求发送到服务器的数据。
success(data,status,str) 可选。规定当请求成功时运行的函数。
额外的参数:
response - 包含来自请求的结果数据
status - 包含请求的状态
str- 包含 XMLHttpRequest 对象
eg:
$.getJSON("test.js", function(json){ alert("JSON Data: " + json.info[3].name); });
四、Java操作json
//JSON对象 JSONObject的使用
String str1 = "{ 'name': 'jacun', 'sex': '0' }";
JSONObject obj = JSONObject.fromObject(str1);
String name = obj.getString("name"); //直接返回字符串型 jacun
Object nameo = obj.get("name"); //直接返回对象型的jacun
int age = obj.getInt("sex"); //直接返回int型的sex //JSON数组对象 JSONArray的运用
String jsonArrStr = "[{ 'name': 'jacun', 'sex': '1','website':'http://www.jacun.cn' },{ 'name': 'bai', 'sex': '1','website':'http://www.baidu.com' }]"; JSONArray array = JSONArray.fromObject(jsonArrStr);
int size = array.size(); //获取JSON数组大小
JSONObject jo = array.getJSONObject(0);//取第一个JSON对象
for(int i=0;i<size;i++){
JSONObject jo1 = array.getJSONObject(i);
System.out.println(jo1.getString("website")); //循环返回网址
} //序列化Bean对象为JSON对象
User user = new User();
user.setName("jacun");
user.setSex(1);
user.setWebsite("http://www.jacun.com");
JSONObject jo2 = JSONObject.fromObject(user);
System.out.println(jo2.toString()); //则会输出 { 'name': 'jacun', 'sex': '1','website':'http://www.jacun.cn' }
五、Python操作json
import json
str1 = '{ "name": "jacun", "sex": "1" }'
# 或者
# str1 = """{ "name": "jacun", "sex": "1" }"""
# 或者
# str1 = "{ \"name\": \"jacun\", \"sex\": \"1\" }"
obj = json.loads(str1)
print(obj["name"])
print(obj["sex"])
# 由于出现中文,记得文件头加入 # coding:utf8
json_arr_str = """[{ "name": "jacun", "sex": "1","website":"http://www.jacun.com" },{ "name": "中国", "sex": "1","website":"http://www.jacun.com" }]"""
arr = json.loads(json_arr_str)
for o in arr:
print(o["name"])
print(o["sex"])
print(o["website"])
解析json的方式的更多相关文章
- Android入门(二十二)解析JSON
原文链接:http://www.orlion.ga/687/ 解析JSON的方式有很多,主要有官方提供的 JSONObject,谷歌的开源库 GSON.另外,一些第三方的开源库如 Jackson.Fa ...
- JAVA JSON解析:类XPATH解析JSON
目前JAVA解析JSON的方式有很多种,json-lib啊,GJSON啊,等等都可以解析,但通常是将JSON转换为对象或者是LIST或者是MAP,对于我们测试人员来说,其实我们并不需要里面的全部信息, ...
- js中解析json时候的eval和$.parseJSON()的区别以及JSON.stringify()
1.第一个区别是:安全性 json格式非常受欢迎,而解析json的方式通常用JSON.parse()但是eval()方法也可以解析,这两者之间有什么区别呢? JSON.parse()之可以解 ...
- 如何解析Json返回的数据
Json在Web开发的用处非常广泛,作为数据传递的载体,如何解析Json返回的数据是非常常用的.下面介绍下四种解析Json的方式: Part 1 var list1 = [1,3,4]; alert( ...
- unity解析json的两种方式
一直比较钟情于json,用来做数据交互,堪称完美!下面简单说一下unity使用C#脚本如何解析json数据吧. 一.写解析类,借助于JsonUtility.FromJson 直接给个例子吧 1.jso ...
- Java解析Json数据的两种方式
JSON数据解析的有点在于他的体积小,在网络上传输的时候可以更省流量,所以使用越来越广泛,下面介绍使用JsonObject和JsonArray的两种方式解析Json数据. 使用以上两种方式解析json ...
- java后台处理解析json字符串的两种方式
简单说一下背景 上次后端通过模拟http请求百度地图接口,得到的是一个json字符串,而我只需要其中的某个key对应的value. 当时我是通过截取字符串取的,后来觉得不太合理,今天整理出了两种处理解 ...
- JSON数据解析(GSON方式) (转)
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 在上一篇博文<Andro ...
- 解析JSON的三种方式
JSONObject JSONObject jsonObject = new JSONObject(strJson); JSONArray jsonArray = jsonObject.getJS ...
随机推荐
- Scrapy学习-18-去重原理
Scrapy去重原理 scrapy本身自带一个去重中间件 scrapy源码中可以找到一个dupefilters.py去重器 源码去重算法 # 将返回值放到集合set中,实现去重 def reque ...
- Yii使用find findAll查找出指定字段的实现方法
Yii使用find findAll查找出指定字段的实现方法,非常实用的技巧,需要的朋友可以参考下. 用过Yii的朋友都知道,采用如下方法: 查看代码 打印 1 modelName::model() ...
- hdu 1181(Floyed)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...
- LeetCode OJ--Longest Consecutive Sequence ***
http://oj.leetcode.com/problems/longest-consecutive-sequence/ 起初想的是排序,查了下O(n)的排序算法有计数排序.基数排序.桶排序.后来考 ...
- 《从零开始搭建游戏服务器》项目管理工具Maven
简介 什么是Maven?Maven是一个项目管理和综合工具,提供了开发人员构建一个完整的生命周期框架. Maven使用标准的目录结构和默认构建生命周期,在多个开发团队环境时,Maven可以设置按标准在 ...
- HDU - 3664 Permutation Counting
Discription Given a permutation a1, a2, … aN of {1, 2, …, N}, we define its E-value as the amount of ...
- 第1章 CentOS安装
一.安装说明 1.1 CentOS介绍 CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux ...
- chrome mac 快捷键
⌘-N 打开新窗口. ⌘-T 打开新标签页. ⌘-Shift-N 在隐身模式下打开新窗口. 按 ⌘-O,然后选择文件. 在 Google Chrome 浏览器中打开计算机中的文件. 按住 ⌘ 键,然后 ...
- IDEA查看源码时提示:Library source does not match the bytecode for class的问题分析
通过Maven查看依赖的源码时,通常是Maven自动下载JAR包附属的source包,但是会出现一个问题,由于使用lombok插件会造成编写的Java文件和编译后的class上有差别,所以IDEA打开 ...
- debug : 调试主进程启动的子进程
http://blog.csdn.net/lostspeed/article/details/10109867