C#處理Json字串執行個體分析

來源:互聯網
上載者:User

標籤:ati   抓取   適配器   generic   web應用   col   div   str   ima   

Json字串對於做web應用的應該很熟悉,其實在很多請求我們返回的都是Json字串。那對於C#代碼如何處理Json字串呢,.Net封裝了一個類叫做JavaScriptSerializer[MSDN Library 連結

];這個類提供了一個方法。

下面這個是我在快遞100往抓取的一個圓通的快遞資訊。對於我們有用的資訊是快遞時間,快遞狀況。那我該如何來做。


代碼如下:


{“message”:”ok”,”nu”:”9356359685″,”ischeck”:”1″,”com”:”yuantong”,”status”:”200″,”condition”:”F00″,”state”:”3″,”data”:[{“time”:”2014-09-01 21:19:06″,”context”:”甘肅省武威市公司 已簽收 “,”ftime”:”2014-09-01 21:19:06″},{“time”:”2014-09-01 09:09:28″,”context”:”甘肅省武威市公司 派件中 “,”ftime”:”2014-09-01 09:09:28″},{“time”:”2014-09-01 09:06:27″,”context”:”甘肅省武威市公司 已收入 “,”ftime”:”2014-09-01 09:06:27″},{“time”:”2014-08-31 19:53:47″,”context”:”甘肅省蘭州市公司 已發出 “,”ftime”:”2014-08-31 19:53:47″},{“time”:”2014-08-31 19:17:41″,”context”:”甘肅省蘭州市公司 已收入 “,”ftime”:”2014-08-31 19:17:41″},{“time”:”2014-08-28 23:44:26″,”context”:”廣東省深圳市橫崗公司 已打包 “,”ftime”:”2014-08-28 23:44:26″},{“time”:”2014-08-28 23:19:12″,”context”:”廣東省深圳市橫崗公司 已收件 “,”ftime”:”2014-08-28 23:19:12″},{“time”:”2014-08-28 21:55:35″,”context”:”廣東省深圳市橫崗公司 已收件 “,”ftime”:”2014-08-28 21:55:35″}]}

1. 首先分析Json字串結構. Json{ message,nu,isCheck,Data{time,context,ftime}};我們先定義一個類,取名為PostalDeliveryModel,類名的結構需要與Json結構對應,名稱需要保持一樣[忽略大小寫],其次對應的欄位說會自動轉換類型的,類型如果不符合會拋出異常


代碼如下:


using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace TestJson

{

public class PostalDeliveryModel

{

private string message = string.Empty;

private string nu = string.Empty;

private List<SingalData> data = new List<SingalData>();

// Puclic的名字需要與Json字串相同,但是忽略大小寫

public string Message

{

get { return this.message; }

set { this.message = value; }

}

public string Nu

{

get { return this.nu; }

set { this.nu = value; }

}

public List<SingalData> Data

{

get { return this.data; }

set { this.data = value; }

}

}

public class SingalData

{

private DateTime time = System.DateTime.Now;

private string context = string.Empty;

private DateTime ftime = System.DateTime.Now;

public DateTime Time

{

get { return this.time; }

set { this.time = value; }

}

public DateTime FTime

{

get { return this.ftime; }

set { this.ftime = value; }

}

public string Context

{

get { return this.context; }

set { this.context = value; }

}

}

}

2.對象什麼好後只需要調用方法即可:


代碼如下:


using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.IO;

using System.Web.Script.Serialization; // 此命名空間對應的架構是 System.Web.Extensions

namespace TestJson

{

public class Program

{

public static void Main(string[] args)

{

string jsonStr = new StreamReader(“JsonData.txt”).ReadToEnd();

PostalDeliveryModel mode = new JavaScriptSerializer().Deserialize<PostalDeliveryModel>(jsonStr);

Console.ReadKey();

}

}

}

3.運行監控model對象.資料已經在對象裡面了。

4.方法回顧,雖然擷取到了。不過這種方法類的Public屬性名稱必須與Json字串對應,不知道可否通過在Public屬性的上面加上[標籤]來映射,這樣可以自訂名稱,不再需要與Json裡面名稱一樣。求其他大牛在評論的時候指點一下。

以上所述就是對於c#如何處理json字串的全部內容了,希望大家能夠喜歡。

除聲明外, 跑步客文章均為原創,轉載請以連結形式標明本文地址
  C#處理Json字串執行個體分析

本文地址:  http://www.paobuke.com/develop/c-develop/pbk23132.html






相關內容C#使用LitJson解析JSON的範例程式碼C#小數點格式化用法小結C#程式中使用LINQ to XML來查詢XML格式資料的執行個體C#儲存與讀取DataTable資訊到XML格式的方法
C#列出所有實體網路介面卡的方法c#實現抓取高清美女妹紙圖片C#排序演算法的比較分析C#中使用強制類型實現字串和ASCII碼之間的轉換

C#處理Json字串執行個體分析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.