日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C# JSON格式数据用法

發布時間:2023/12/10 C# 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# JSON格式数据用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JSON簡介

JSON(全稱為JavaScript ObjectNotation) 是一種輕量級的數據交換格式。它是基于JavaScript語法標準的一個子集。JSON采用完全獨立于語言的文本格式,可以很容易在各種網絡、平臺和程序之間傳輸。JSON的語法很簡單,易于人閱讀和編寫,同時也易于機器解析和生成。

?

JSON與XML的比較

◆可讀性

JSON和XML的可讀性相比較而言,由于XML提供輔助的標簽,更加適合人閱讀和理解。

◆文件大小與傳輸

XML允許使用方便的標簽,所以文件尺寸是要比JSON大的。而且JSON源于Javascript,所以天生的主戰場是Javascript與網絡,在這里,JSON有著XML無法趕超的優勢。

?

JSON語法

1. JSON 語法是 JavaScript 對象表示法語法的子集。

數據在名稱/值對中:名稱是字符串,使用雙引號表示。值可以是:數字(整數或浮點數),字符串(在雙引號中),數組(在方括號中),對象(在花括號中),true/false/null。

數據由逗號分隔:

花括號保存對象:對象可以包含各種數據,包括數組。

方括號保存數組:數字可以包含對象。

在做開發的時候,很多數據都是以Json格式傳輸的,而使用Json的時候,我們通常會涉及到幾個序列化對象的使用:

System.Runtime.Serialization.Json.DataContractJsonSerializer
System.Web.Script.Serialization.JavaScriptSerializer
Json.NET即Newtonsoft.Json?
由于Json.NET的性能及通用性較好,因此它的使用范圍越來越廣,借助前人的經驗今天我也總結使用一下。?
官網API:http://www.newtonsoft.com/json/help/html/N_Newtonsoft_Json.htm

開源的類庫Newtonsoft.Json(下載地址https://www.newtonsoft.com/json)

private void Newtonsoft() {DataTable dt = new DataTable();dt.Columns.Add("Name", Type.GetType("System.String"));dt.Columns.Add("Sex", Type.GetType("System.String"));dt.Columns.Add("Age", Type.GetType("System.Int32"));dt.Columns.Add("PhoneNumber", Type.GetType("System.String")); ? ?for (int i = 0; i < 3; i++){DataRow dr = dt.NewRow();dr["Name"] = "Name" + i;dr["Sex"] = i % 2 == 0 ? "" : "";dr["Age"] = 18 + i;dr["PhoneNumber"] = "18233388888";dt.Rows.Add(dr);} ? ?/*序列化DataTable*/string json = JsonConvert.SerializeObject(dt); ? ?/*反序列化DataTable*/DataTable dtSource = JsonConvert.DeserializeObject<DataTable>(json); ? ?foreach (DataRow item in dtSource.Rows){ ? ? ? ?string name = item["Name"].ToString(); ? ? ? ?string sex = item["Sex"].ToString(); ? ? ? ?int age = int.Parse(item["Age"].ToString()); ? ? ? ?string phoneNumber = item["PhoneNumber"].ToString();} }

? ? ? Serialize JSON 格式轉換示例:

Product product = new Product(); product.Name = "Apple"; product.Expiry = new DateTime(2008, 12, 28); product.Sizes = new string[] { "Small" };string json = JsonConvert.SerializeObject(product);//

Deserialize JSON?格式轉換

string json = @"{'Name': 'Bad Boys','ReleaseDate': '1995-4-7T00:00:00','Genres': ['Action','Comedy'] }";Movie m = JsonConvert.DeserializeObject<Movie>(json);string name = m.Name;

LINQ to JSON?格式轉換

JArray array = new JArray(); array.Add("Manual text"); array.Add(new DateTime(2000, 5, 23));JObject o = new JObject(); o["MyArray"] = array;string json = o.ToString();


創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的C# JSON格式数据用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。