解析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 ...
随机推荐
- sql server2008 R2安装总结
1,卸载注意 在卸载Microsoft SQL Server 2008 R2 安装程序(简体中文) 出现 :“警告 26003.无法卸载 Microsoft SQL Server 2008 R2 安装 ...
- 数据结构自己实现——Tree and Forest
//中D序??遍???历???二t叉?树??? //先??序??遍???历???二t叉?树??? //后??序??遍???历???二t叉?树??? #include <iostream> ...
- AC日记——方格取数 洛谷 P1004
题目描述 设有N*N的方格图(N<=9),我们将其中的某些方格中填入正整数,而其他的方格中则放 人数字0.如下图所示(见样例): A 0 0 0 0 0 0 0 0 0 0 13 0 0 6 0 ...
- js-点击按钮页面滚动到顶部,底部,指定位置
之所以笔记一下这个,因为我在项目中经常用到. $('.scroll_top').click(function(){$('html,body').animate({scrollTop: '0px'}, ...
- CSS-滤镜 -webkit-filter
css滤镜属性,可以在元素呈现之前,为元素的渲染提供一些效果,如模糊.颜色转移之类的.滤镜常用于调整图像.背景.边框的渲染. 语法: webkit-filter: none | blur(px) | ...
- 总结 Eclipse 编程常用的快捷键
Eclipse 常用快捷键Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率.Eclipse中有如下一些和编辑相关的快捷键. 1. [ALT+/] 此快捷键为用户编 ...
- SPOJ LIS2 - Another Longest Increasing Subsequence Problem(CDQ分治优化DP)
题目链接 LIS2 经典的三维偏序问题. 考虑$cdq$分治. 不过这题的顺序应该是 $cdq(l, mid)$ $solve(l, r)$ $cdq(mid+1, r)$ 因为有个$DP$. #i ...
- linux grep 查找文件内容
自试: wang@wang:~$ grep -i "*args*" ~/IGV01-SW/src/bzrobot_diagnostics/bzrobot_lightbelt_man ...
- uibutton 使用settitle后如何修改其中文字对齐方式
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; btn.frame = CGRectMake(5, s ...
- OpenGL step to step(1)
在窗体上绘制一个矩形,just a demo #include <GLUT/GLUT.h> void init() { glClearColor(0.0,0.0,0.0,0.0); glS ...