日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C# Json文件寫入、讀取 ,Json文件序列化、反序列化

admin
2024年10月17日 23:6 本文熱度 748

在C#中,處理JSON文件的寫入、讀取、序列化和反序列化是一個常見的需求,特別是在需要與前端JavaScript應用進行數據交換或配置文件管理的場景中。下面將分別介紹如何使用.NET自帶的System.Text.Json命名空間(從.NET Core 3.0開始引入)和廣泛使用的第三方庫Newtonsoft.Json(也稱為Json.NET)來完成這些任務。

使用 System.Text.Json

序列化

序列化是將對象轉換為JSON字符串的過程。

using System;using System.Text.Json;
public class Person{    public string Name { get; set; }    public int Age { get; set; }}
class Program{    static void Main(string[] args)    {        Person person = new Person { Name = "John Doe", Age = 30 };        string jsonString = JsonSerializer.Serialize(person);        Console.WriteLine(jsonString);

       // 寫入到文件        using (var writer = System.IO.File.CreateText("person.json"))        {            writer.Write(jsonString);        }    }}

反序列化

反序列化是將JSON字符串轉換回對象的過程。

using System;using System.Text.Json;using System.IO;
class Program{    static void Main(string[] args)    {        string jsonString = File.ReadAllText("person.json");        Person person = JsonSerializer.Deserialize<Person>(jsonString);        Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");    }}

使用 Newtonsoft.Json (Json.NET)

序列化

using Newtonsoft.Json;using System;
public class Person{    public string Name { get; set; }    public int Age { get; set; }}
class Program{    static void Main(string[] args)    {        Person person = new Person { Name = "John Doe", Age = 30 };        string jsonString = JsonConvert.SerializeObject(person);        Console.WriteLine(jsonString);

       // 寫入到文件        System.IO.File.WriteAllText("person.json", jsonString);    }}

反序列化

using Newtonsoft.Json;using System;using System.IO;
class Program{    static void Main(string[] args)    {        string jsonString = File.ReadAllText("person.json");        Person person = JsonConvert.DeserializeObject<Person>(jsonString);        Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");    }}

注意事項

  • 選擇庫:System.Text.Json 是.NET Core 3.0及更高版本的一部分,對于新項目,如果不需要Json.NET的高級功能,推薦使用它,因為它有更好的性能和更少的內存占用。
  • 異常處理:在實際應用中,我們可能需要添加異常處理邏輯來捕獲并處理在序列化/反序列化過程中可能發生的錯誤,例如文件訪問錯誤或JSON格式錯誤。
  • 性能:在處理大量數據或需要高性能的場景中,應測試并比較不同庫的性能。
  • 版本兼容性:在使用第三方庫時,注意庫的版本與項目依賴之間的兼容性。

該文章在 2024/10/19 12:13:16 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 成人欧美一 | 色综合婷婷在线观看66 | 热门电影综艺电视剧手机在线观看 | 欧美日韩国产亚洲一区二区 | 亚洲综合成人精品成人精品 | 免费的电影天堂手机在线观看 | 国产一级特黄aa大片免费 | 亚洲色成人影院在线观看 | 日韩美女网站在线看 | 天美麻花视频大全 | 国产自国产自愉自愉免费24区 | 国产在线精品国偷产拍 | 日韩精品视 | 国产欧美va欧美va日韩精品 | 亚洲日本天堂在线 | 欧美国产日韩一区二区 | 精品综合国产一区二区三区码码 | 亚洲国产最大aⅴ | 玖玖精品在线观看 | 欧美日韩中文字幕 | 免费播放婬乱男女婬视频国 | 国产免费人成视频网站在线看 | 免费人成视频在线观看网站 | 欧美最猛黑人xxxx | 国产h片在线观看视 | 挤奶在线 | 日韩精品在线不卡一区二区 | 一起碰一起噜一起 | 一区二区三区视 | 国产一级一级一级国产片 | 国产精品爽爽va在线 | 亚洲欧美日韩综合一区 | 日韩在线免 | 欧美日韩国产这里只有精品 | 国产一区二区三区正品 | 国产丝袜控视频在线观看 | 加勒比一本大道香蕉大在线 | 在线可以看 | 一区二区区别是什么 | 在线看片免费人成视频手机观看 | 热门影视资源 |