Swifter.Json简介
Json就不多做介绍了,Newtonsoft.Json相信大家也都用过了。今天给大家介绍另外一款json的序列化工具Swifter.Json。
GitHub地址:https://github.com/Dogwei/Swifter.Json/wiki
Wiki地址:https://github.com/Dogwei/Swifter.Json

部分 .Net 现有的 JSON 工具性能对比
.Net Core 3.0 Previews running results.
.Net Framework 4.7.1 Previews running results.
本人测试Swifter.Json 与 Newtonsoft.Json,超过百万次后Swifter.Json的性能是Newtonsoft.Json的三到五倍。
简单使用
新建一个Demo类
public class Demo { public int Id { get; set; } public string FirstName { get; set; } public DateTime CreateTime { get; set; } }
//1、基本使用 //序列化一个对象为json var json = JsonFormatter.SerializeObject(new { Id = 1, FirstName = "Ma", CreateTime =DateTime.Now}); var dic = JsonFormatter.DeserializeObject<Demo>(json);
//2、日期格式的处理
var jsonFormatter2 = new JsonFormatter();
jsonFormatter2.SetDateTimeFormat("yyyy-MM-dd HH:mm:ss"); //设置json中日期为统一格式
Demo de2 = new Demo { Id = 1, FirstName = "", CreateTime = DateTime.Now };
var json2 = jsonFormatter2.Serialize<Demo>(de2);
//也可以在上面的实体类属性上设置
[RWFormat("yyyy-MM-dd HH:mm:ss")]
public DateTime CreateTime { get; set; }
//3、字段特殊处理 var jsonFormatter3 = new JsonFormatter( JsonFormatterOptions.IgnoreNull // 忽略 Null 值 | JsonFormatterOptions.IgnoreZero // 忽略基础类型的 0 值 | JsonFormatterOptions.IgnoreEmptyString // 忽略字符串 "" 值 ); jsonFormatter3.SetDateTimeFormat("yyyy-MM-dd HH:mm:ss"); Demo de3 = new Demo { Id = 1, FirstName = "ss", CreateTime = DateTime.Now }; var json3= jsonFormatter3.Serialize<Demo>(de3);
其他使用方式可以去Wiki上查看,总体跟Newtonsoft.Json使用方式大同小异。
才疏学浅,相关文档等仅供自我总结,如有相关问题可留言交流谢谢。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?