C#字符串转成JSON对象,并解析出里面的数据

C#字符串转成JSON对象,并解析出里面的数据
代码如下:
_Cookie = new CookieCollection();
HttpWebRequest request = HttpWebResponseUtility.CreateGetHttpRequest(_serverUrl, null, null, _Cookie);
//request.CookieContainer = _Cookie;

using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
try
{

StreamReader stream = new StreamReader(response.GetResponseStream(), Encoding.UTF8);

string boday = stream.ReadToEnd();
Object obj = JsonConvert.DeserializeObject(boday);

//JObject obj = (JObject)RequestHelper.getData(boday);
MessageBox.Show("W");
/*
if (obj != null && obj["uid"] != null && obj["uid"].ToString().Equals("1"))
{

BeginInvoke(new ShowFrom(LoginHandle));
}
else
{
BeginInvoke(new ShowFrom(delegate() { MessageBox.Show("用户名或密码错误"); }));
}
* */
}
catch
{
}
}
}
catch
{
MessageBox.Show("出错");
}
}

Object obj = JsonConvert.DeserializeObject(boday);这句程序无法运行,不知道应该怎么做才能让返回流中的字符串变成JSON对象,并且解析里面的数据来做判断是否登陆

构造对象:

public struct ToJsonMy

{

public string result { get; set; }  //属性的名字,必须与json格式字符串中的"key"值一样。

public string res_info { get; set; }

public string queryorder_info { get; set; }   }

转换过程:

public static void JsonMy()

{

string json = Jsonstr("D:\json\jsonmy1.txt");//Jsonstr函数读取json数据的文本txt                             

JavaScriptSerializer js = new JavaScriptSerializer();   //实例化一个能够序列化数据的类

ToJsonMy list = js.Deserialize(json);    //将json数据转化为对象类型并赋值给list

string result = list.result;                         

string res_info = list.res_info;

string queryorder_info = list.res_info;

}


你要先分析boday 这个字符串,先去确认它仔凯是不是逗乱个json格式的数据,然后根据它的结构创建一个相应的类(假设叫XXX类),之后才能进行json的解析:

XXX xxx=JsonConvert.DeserializeObject<念指唤XXX>(boday);
JavascriptSerializble
给闹猜你一个网址,你看下如游弯哪何转化的神码。http://www.cnblogs.com/sun-sjmeng/archive/2012/09/08/2660559.html
可考虑使用第三方dll:NewtonSoft.Json.dll
← 上一篇: 下一篇: →