.Net Core 3.0原生Json解析器

微软官方博客中描述了为什么构造了全新的Json解析器而不是继续使用行业准则Json.Net

微软博客地址:https://devblogs.microsoft.com/dotnet/try-the-new-system-text-json-apis/

在官方的Github中,也有关于此问题的详细描述:https://github.com/dotnet/corefx/issues/33115

简单说明就是.Net Core有一个Span<T>类,它类似于数组,但它不托管于堆上,因此提供了操作内存的高性能,这将对序列化和反序列化提供更高的性能。

官方API完整介绍https://docs.microsoft.com/zh-cn/dotnet/api/system.text.json?view=netcore-3.0

同时UTF-8和UTF-16也是微软考虑的一个点。

开始详细了解一下吧:

  

复制代码
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            string person = "[{\"name\":\"fanqi\",\"age\":25,\"phone\":[\"10086\",\"10010\"]},{\"name\":\"zhangrong\",\"age\":24,\"phone\":[\"10000\",\"10010\"]}]";
            List<Person> personList = JsonSerializer.Deserialize<List<Person>>(person);
            string json = JsonSerializer.Serialize(personList, personList.GetType());
            JsonDocument document = JsonDocument.Parse(person);
            Console.ReadKey();

        }
    }
    class Person
    {
        public string name { get; set; }
        public int? age { get; set; }
        public List<string> phone { get; set; }
    }
复制代码

 

作者:奇

出处:https://www.cnblogs.com/fanqisoft/p/11479193.html

版权:本作品采用「本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。」许可协议进行许可。

posted @   SpringCore  阅读(2734)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
more_horiz
keyboard_arrow_up light_mode palette
选择主题
点击右上角即可分享
微信分享提示