C# 使用解析json 嵌套方法
C#从网页不传参数 接收json数据
public String GetHtmlFromUrl(String url)
{
//Response.Write(url);
//Response.End();
String strRet = null;
if (url == null || url.Trim().ToString() == "")
{
return strRet;
}
String targeturl = url.Trim().ToString();
try
{
HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl);
hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
hr.Method = "GET";
hr.Timeout = * * ;
WebResponse hs = hr.GetResponse();
Stream sr = hs.GetResponseStream();
StreamReader ser = new StreamReader(sr, Encoding.UTF8);
strRet = ser.ReadToEnd();
}
catch (Exception ex)
{
strRet = ex.Message;
}
finally
{
//strRet = "ok";
}
return strRet;
}
接收到的json字符串是
{"err":0,"stat":"成功","token":"lishuai","RYtoken":"pPE5vmXNfAjBWnBVKYNnK59ciF9+nYNPonEsztEYnSKFa5MsrYaS9IZvLaZKcQyV+PiRpJrnZ55EjTIMHwq+V/EbSVX7VdU3","userinfo":[{"name":"李帅","sex":"男","dept":null,"pic":""}]}
调用方法(这是用C# 的应用程序 --客户端)
private void button1_Click(object sender, EventArgs e)
{
string jsonText = new Class1().GetHtmlFromUrl("http://60.210.111.74:8013/TQ/EISAddMethod/Login.ashx?username=lishuai&password=000");
// string jsonText = @"{""input"" : ""value"",""output"" : ""result""}";
JsonReader reader = new JsonTextReader(new StringReader(jsonText)); //嵌套型
// string jsonText = "{\"beijing\":{\"zone\":\"海淀\",\"zone_en\":\"haidian\"}}"; JObject jo1 = (JObject)JsonConvert.DeserializeObject(jsonText);
label1.Text += "err" +" "+ jo1["err"].ToString() + "\n";
label1.Text += "stat" + " " + jo1["stat"].ToString() + "\n";
label1.Text += "token" + " " + jo1["token"].ToString() + "\n";
label1.Text += "RYtoken" + " " + jo1["RYtoken"].ToString() + "\n";
label1.Text += "name" + " " + jo1["userinfo"][]["name"].ToString() + "\n";
label1.Text += "sex" + " " + jo1["userinfo"][]["sex"].ToString() + "\n";
label1.Text += "dept" + " " + jo1["userinfo"][]["dept"].ToString() + "\n";
label1.Text += "pic" + " " + jo1["userinfo"][]["pic"].ToString() + "\n"; }
可以解析练习:
{"err":0,"stat":"成功","list":[{"_AutoID":"2704312b-e7f6-4405-89e1-0919f7e98d81","EmpName":"李帅","Isnotread":"3","Datetimes":"2017-6-25 0:00:00","edit":"no","LoginName":"lishuai"},{"_AutoID":"A2465C8A-C6E4-4F96-BB5C-ED9D40D67D80","EmpName":"董浩","Isnotread":"3","Datetimes":"2017-4-10 0:00:00","edit":"no","LoginName":"lishuai"}]}
C# 使用解析json 嵌套方法的更多相关文章
- .NET下解析Json的方法
.NET下几种常见的解析JSON方法 主要类 命名空间 限制 内建LINQ支持 DataContractJsonSerializer System.Runtime.Serialization.Json ...
- 再次提供一个纯粹通过pl/sql解析json的方法。
在github上面有一个叫pljson的项目,该项目就是用pl/sql 来解析json的. 项目地址:pljson(需翻|强),如果翻不了强的同学,我在国内克隆了一个副本,不定期同步更新 pljson ...
- vbs 解析 json jsonp 方法
昨天说了下用 htmlfile 来解析 html,今天依然用他来解析,htmlfile 是一个 COM 版的 BOM 和 DOM,所以解析 html, 执行 js 完全不在话下,今天就继续解析 jso ...
- JavaScript转换与解析JSON的方法
在JavaScript中将JSON的字符串解析成JSON数据格式,一般有两种方式: 一种为使用eval()函数. 使用Function对象来进行返回解析. 使用eval函数来解析,jquery的eac ...
- 解析json的方法
解析json的两种方法:JS中的eval().JSON.parse eval不仅解析内容还会解析其中的方法,JSON.parse解析更安全.JSONLint可校验json的错误.
- Java创建和解析Json数据方法(五)——Google Gson包的使用
(五)Google Gson包的使用 1.简介 Gson包中,使用最多的是Gson类的toJson()和fromJson()方法: ①toJson():将java对象转化为json数据 ...
- Java创建和解析Json数据方法(四)——json-lib包的使用
(四)json-lib包的使用 既然json-lib包比org.json包重量级,那么json-lib包肯定有很多org.json包没有的类和方法,这篇笔记简单记录json-lib包中 ...
- Java创建和解析Json数据方法(三)——json-lib包的使用
(三)json-lib包的使用 这篇笔记主要介绍json-lib包的创建和解析json数据的方式,主要是的JSONObject.JSONArray和Java对象:beans, maps ...
- Java创建和解析Json数据方法(二)——org.json包的使用
(二)org.json包的使用 1.简介 工具包org.json.jar,是一个轻量级的,JAVA下的json构造和解析工具包,它还包含JSON与XML, HTTP headers, Cookie ...
随机推荐
- [hiho1584]Bounce
题意:找出图中经过一次的格子个数. 解题关键: 组合数学的思想:先找出总的经过格子的次数,然后减去2倍的经过2次的格子个数. 1.总的求法:将长延展,当延展到n倍时,能够恰好到达右边的两个端点,则总格 ...
- 开源:基于Android的室内定位WiFi,iBeacon数据采集和定位脚本
最近有同学联系我,也在一些群里看到有新手同学挣扎在怎么获取定位数据,不知从何下手.所以整理并开源这个基于Android的数据采集软件和基于python的KNN定位demo,算是为新手同学建立一个Bas ...
- 解决eclipse js文件报错(转)
在我们将项目导入Eclipse后,配置好各种编译条件.加载好jar包.配置好tomcat后发现项目还是报错,(前提是项目本身并没有错误,而是我们在初次导入到Eclipse中的时候报错),那是什么原因引 ...
- 学习SpringMVC时遇到的一些问题
1. 找不到mapping 比较弱智的问题,忘了在对应的类上加上 @Controller 注解了 2. Model中设置的值不显示 Eclipse 自动生成的web.xml 是 2.3版本的,网上说改 ...
- 洛谷P1556 幸福的路
P1556 幸福的路 题目描述 每天,John都要为了农场里N(1≤N≤10)头牛的健康和幸福四处奔波. 每头牛的位置可以描述为一个二维坐标,John从坐标原点(0,0)出发.为了使路径更有趣,Joh ...
- Java基础--基本规则、语法
一.关键字.保留字.标识符.常量.变量 1.关键字:使用某种语言赋予特殊含义的单词. 2.保留字:没有赋予特殊含义,但以后可能会使用的单词. 3.标识符:自定义的单词,以数字.字母.下划线以及$符组成 ...
- Mysql相关函数使用和总结(liet、right、substring、substring_index)
一.字段截取 1.从左开始截取字符串 用法:left(str,length),即:leift(被截取字符串,截取长度) 列子:select left(‘www.baidu.com’,8) 结果:www ...
- linux bg和fg命令
linux下我们如果想一个任务或者程序还后台执行可以使用&,实际上linux还提供了其他任务调度的命令. bg将一个在后台暂停的命令,变成继续执行 fg将后台中的命令调至前台继续运行 jobs ...
- java基础第七篇之接口
1.什么是接口: * 接口是方法的集合,而且接口中的方法全是抽象的 * 你可以把接口看成一个特殊的"抽象类",接口中的方法全是抽象的 * * * 2.java中怎么定义接口: * ...
- 洛谷 P2895 [USACO08FEB]流星雨Meteor Shower 解题报告
一起来看流星雨吧(话说我还没看到过流星雨呢) 题目 Problem 小A则听说另一个骇人听闻的消息: 一场流星雨即将袭击整个霸中,由于流星体积过大,它们无法在撞击到地面前燃烧殆尽,届时将会对它撞到的一 ...