博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Json解析
阅读量:6262 次
发布时间:2019-06-22

本文共 3132 字,大约阅读时间需要 10 分钟。

Javascript:

1.使用evalvar parse_json_by_eval = function(str){    return eval('('+str+')');}var value = 1;var jsonstr = '{"name":"jifeng","company":"taobao","value":++value}';var json1 = parse_json_by_eval(jsonstr);console.log(json1);console.log('value: '+ value);    執行結果: { name: 'jifeng', company: 'taobao', value: 2 }value: 22.使用JSON.parse var parse_json_by_JSON_parse = function(str){    return JSON.parse(str);}value = 1;var jsonstr = '{"name":"jifeng","company":"taobao"}';var json2 = parse_json_by_JSON_parse(jsonstr);console.log(json2);console.log(value);From:http://www.cnblogs.com/lengyuhong/archive/2012/01/07/2262390.html
以上代码来自博客:

PHP:

$json_string='{"id":1,"name":"jb51","email":"admin@jb51.net","interest":["wordpress","php"]} '; $obj=json_decode($json_string); echo $obj->name; //prints foo echo $obj->interest[1]; //prints php

Java:

JSONObject  dataJson=new JSONObject("你的Json数据“);JSONObject  response=dataJson.getJSONObject("response");JSONArray data=response.getJSONArray("data");JSONObject info=data.getJSONObject(0);String province=info.getString("province");String city=info.getString("city");String district=info.getString("district");String address=info.getString("address"); System.out.println(province+city+district+address);

C#:

使用开源的类库Newtonsoft.Json(下载地址http://json.codeplex.com/)。下载后加入工程就能用。通常可以使用JObject, JsonReader, JsonWriter处理。这种方式最通用,也最灵活,可以随时修改不爽的地方。(1)使用JsonReader读Json字符串:[csharp] view plaincopystring jsonText =@"{""input"" : ""value"",""output"" : ""result""}";  JsonReader reader = new JsonTextReader(newStringReader(jsonText));  while (reader.Read())  {     Console.WriteLine(reader.TokenType + "\t\t" + reader.ValueType+ "\t\t" + reader.Value);  }  (2)使用JsonWriter写字符串:[csharp] view plaincopyStringWriter sw = new StringWriter();  JsonWriter writer = new JsonTextWriter(sw);     writer.WriteStartObject();  writer.WritePropertyName("input");  writer.WriteValue("value");  writer.WritePropertyName("output");  writer.WriteValue("result");  writer.WriteEndObject();  writer.Flush();     string jsonText =sw.GetStringBuilder().ToString();  Console.WriteLine(jsonText);  (3)使用JObject读写字符串:[csharp] view plaincopyJObject jo = JObject.Parse(jsonText);  string[] values =jo.Properties().Select(item => item.Value.ToString()).ToArray();  (4)使用JsonSerializer读写对象(基于JsonWriter与JsonReader):数组型数据[csharp] view plaincopystring jsonArrayText1 ="[{'a':'a1','b':'b1'},{'a':'a2','b':'b2'}]";  JArray ja =(JArray)JsonConvert.DeserializeObject(jsonArrayText1);  string ja1a =ja[1]["a"].ToString();  //或者  JObject o = (JObject)ja[1];  string oa = o["a"].ToString();

Python:

import jsondata= json.loads('{"ID": "2", "IP":"12.12.12.12", "Port": "3000", "Sensor_Count":"1", "Control_Count": "1", "Sensors":{"Sensor_Name": "tem", "Type_Count": "1", "Types":{ "types":["temp","C"],"types":["hum","N"],}},"Controls":["LCD","Relay"] }')print data.ID输出结果:"2"data = json.dump(data)print data输出结果:{"ID": "2", "IP":"12.12.12.12", "Port": "3000", "Sensor_Count":"1", "Control_Count": "1", "Sensors":{"Sensor_Name": "tem", "Type_Count": "1", "Types":{ "types":["temp","C"],"types":["hum","N"],}},"Controls":["LCD","Relay"] }
你可能感兴趣的文章
汗,铁道部的12306js脚本竟然用的这么杂乱
查看>>
点播转码相关常见问题及排查方式
查看>>
[arm驱动]linux设备地址映射到用户空间
查看>>
在线转码
查看>>
我的友情链接
查看>>
励志短句在线翻译的方法介绍
查看>>
博客园美化-coffee
查看>>
Hibernate Annotation 学习
查看>>
Hadoop 3.0 纠删码技术分析(Erasure Coding)
查看>>
11、待添加
查看>>
26、百度地图 & 高德地图
查看>>
MYSQL老密码与php版本扩展关系
查看>>
类型检测汇总!typeof 和 instanceof 和isArray
查看>>
HDU4578 线段树(区间更新 + 多种操作)
查看>>
10g集群启动顺序
查看>>
习水医院12C RAC 数据库安装文档
查看>>
Jmeter常用脚本开发之Junit Request
查看>>
C# 加密–RSA前端与后台的加密&解密
查看>>
reduce/reduceRight
查看>>
(转)(contant的一些用法)
查看>>