亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C# Newtonsoft.Json用法詳解

 更新時(shí)間:2023年02月06日 10:19:42   作者:熊思宇  
本文主要介紹了C# Newtonsoft.Json用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

源碼地址:點(diǎn)擊跳轉(zhuǎn)

在NuGet 里直接搜索 Newtonsoft.Json,點(diǎn)擊安裝即可

一、創(chuàng)建JSON對(duì)象

JObject staff = new JObject();
staff.Add(new JProperty("Name", "Jack"));
staff.Add(new JProperty("Age", 33));
staff.Add(new JProperty("Department", "Personnel Department"));
staff.Add(new JProperty("Leader", new JObject(new JProperty("Name", "Tom"), new JProperty("Age", 44), new JProperty("Department", "Personnel Department"))));
Console.WriteLine(staff.ToString());

二、創(chuàng)建JSON數(shù)組

// 創(chuàng)建數(shù)組
JArray array = new JArray();
array.Add(new JValue("吃飯"));
array.Add(new JValue("睡覺(jué)"));
obj.Add("Favorites", array);
obj.Add("Remark", null);
 
Console.WriteLine(array.ToString());

上面代碼可以簡(jiǎn)化成:

JArray array = new JArray("吃飯", "睡覺(jué)");

三、使用Linq to JSON查詢

string json = "{\"Name\" : \"Jack\", \"Age\" : 34, \"Colleagues\" : [{\"Name\" : \"Tom\" , \"Age\":44},{\"Name\" : \"Abel\",\"Age\":29}] }";
//將json轉(zhuǎn)換為JObject
JObject jObj = JObject.Parse(json);
JToken ageToken =  jObj["Age"];
Console.WriteLine(ageToken.ToString());

四、將類對(duì)象序列化為Json

public class Student
{
    public int ID { get; set; }
    public string Name { get; set; }
}
 
Student student = new Student();
student.ID = "1";
student.Name = "jack";
 
//序列化為JSON
string json = JsonConvert.SerializeObject(student);

五、將Json反序列化為類對(duì)象

將 Json 字符串反序列化成一個(gè)類對(duì)象

public class Student
{
    public int ID { get; set; }
    public string Name { get; set; }
}
 
string json = ".....";
Student student = JsonConvert.DeserializeObject<Student>(json);

將 Json 字符串反序列化為 JObject

string json = "{\"ID\":1,\"Name\":\"張三\",\"Favorites\":[\"吃飯\",\"睡覺(jué)\"]}";
 
JObject obj = JObject.Parse(json);

六、常用工具

在上面的json代碼中都帶有 “\” 字符,這個(gè)叫轉(zhuǎn)義字符,一般直接寫在代碼中的json如果沒(méi)有轉(zhuǎn)義,會(huì)報(bào)錯(cuò)的,在這里給大家介紹一些Json相關(guān)的小工具。

1.判斷Json是否正確

JSON在線 | JSON解析格式化—SO JSON在線工具

在這個(gè)網(wǎng)站中,可以判斷 json 是否出錯(cuò)

2.添加轉(zhuǎn)義字符

轉(zhuǎn)義,就是在 json 中加入 “\”,這個(gè)在變量的定義時(shí),會(huì)用到

3.去轉(zhuǎn)義字符

去轉(zhuǎn)義,就是去掉 json 中的 “\”

4.壓縮Json

壓縮,是將自動(dòng)對(duì)齊的 json 變?yōu)橐恍?,并去掉空格,使字符串的字?jié)數(shù)變小

另外,推薦一個(gè)網(wǎng)站,可以將 json 轉(zhuǎn)換為實(shí)體類

5.Json轉(zhuǎn)為實(shí)體類

JSON轉(zhuǎn)C#實(shí)體類

輸入json 就可以轉(zhuǎn)換成對(duì)于的字段了,在我們做反序列化時(shí),非常好用,不過(guò),過(guò)于復(fù)雜的json,轉(zhuǎn)換還是有點(diǎn)問(wèn)題的,需要自己手動(dòng)修改一下。

到此這篇關(guān)于C# Newtonsoft.Json用法詳解的文章就介紹到這了,更多相關(guān)C# Newtonsoft.Json內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#使用TensorFlow.NET訓(xùn)練自己的數(shù)據(jù)集的方法

    C#使用TensorFlow.NET訓(xùn)練自己的數(shù)據(jù)集的方法

    這篇文章主要介紹了C#使用TensorFlow.NET訓(xùn)練自己的數(shù)據(jù)集的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Unity實(shí)現(xiàn)本地文本多語(yǔ)言化

    Unity實(shí)現(xiàn)本地文本多語(yǔ)言化

    這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)本地文本多語(yǔ)言化,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • 一個(gè)讀寫csv文件的C#類

    一個(gè)讀寫csv文件的C#類

    這篇文章主要為大家詳細(xì)介紹了一個(gè)讀寫csv文件的C#類,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • C#處理datagridview虛擬模式的方法

    C#處理datagridview虛擬模式的方法

    這篇文章主要介紹了C#處理datagridview虛擬模式的方法,實(shí)例分析了C#中datagridview的使用技巧,需要的朋友可以參考下
    2015-06-06
  • 詳解C#如何實(shí)現(xiàn)分割視頻

    詳解C#如何實(shí)現(xiàn)分割視頻

    這篇文章主要為大家詳細(xì)介紹了C#如何實(shí)現(xiàn)將視頻文件分割成一幀幀圖片的方法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-12-12
  • C#中執(zhí)行SQL的幾種方法講解

    C#中執(zhí)行SQL的幾種方法講解

    這篇文章介紹了C#中執(zhí)行SQL的幾種方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • C#操作串口通信協(xié)議Modbus的常用方法介紹

    C#操作串口通信協(xié)議Modbus的常用方法介紹

    這篇文章介紹了C#操作串口通信協(xié)議Modbus的常用方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • Unity的IPreprocessBuildWithReport實(shí)用案例深入解析

    Unity的IPreprocessBuildWithReport實(shí)用案例深入解析

    這篇文章主要為大家介紹了Unity的IPreprocessBuildWithReport實(shí)用案例深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • 淺析C#中的Main(String[] args)參數(shù)輸入問(wèn)題

    淺析C#中的Main(String[] args)參數(shù)輸入問(wèn)題

    本篇文章主要是對(duì)C#中的Main(String[] args)參數(shù)輸入問(wèn)題進(jìn)行了詳細(xì)的介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2014-01-01
  • 基于WebRequest.RegisterPrefix的使用詳解

    基于WebRequest.RegisterPrefix的使用詳解

    本篇文章對(duì)WebRequest.RegisterPrefix的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05

最新評(píng)論