功能强大、高性能的 JSON 序列化/反序列化库 Swifter.Json

码农软件 · 软件分类 · 常用工具包 · 2019-08-12 14:11:39

软件介绍

功能强大、高性能的 JSON 序列化和反序列化库,适用于 .Net 平台。

特性

(1): 支持深度复杂的对象结构且易于使用。
(2): 用 $ref 表示重复和循环引用的序列化和反序列化。
(3): 目前唯一支持 ref 属性的 JSON 库。 
(4): 支持几乎所有您常用的类型!并允许您自定义类型的行为。
(5): 支持 .Net Framework 2.0 +, .Net Core 2.0+, .Net Standard 2.0+, Mono, Xamarin, Unity。

Swifter.Json 实用功能

(1): 缩进美化 Json。
(2): 允许忽略 0 或 null 或 "" 值。
(3): 允许使用 [RWField] 特性定制属性或字段的行为。
(4): 允许设置最大深度来限制内容大小。

Swifter.Json 支持的类型

bool, byte, sbyte, char, shoft, ushoft, int, uint, long, ulong,
float, double, decimal, string, enum, DateTime, DateTimeOffset,
Guid, TimeSpan, DBNull, Nullable<T>, Version, Type,
Array, Multidimensional-Arrays, IList, IList<T>, ICollection,
ICollection<T>, IDictionary, IDictionary<TKey, TValue>,
IEnumerable, IEnumerable<T>, DataTable, DbDataReader
...
其余类型将会被当作 Object,以 属性键/属性值 的形式映射。

Swifter.Json 安全吗?

每次发布之前我都会观察至少一个月,期间会进行大量的测试,并且在实际项目中使用未发布的版本
来确保发布版本的稳定性。但即使这样,我也无法保证它一定安全。所以,如果您发现了
Bug 或某些不合理的地方请及时联系我,邮箱 1287905882@qq.com。

性能测试对比

* 图表中的颜色随所用时间从 绿色 渐变为 黄色。当用时超过 3 倍时将以亮黄色显示。
	Timeout: 表示用时过久。
	Exception: 表示发生了异常。
	Error: 未发生异常,但结果不正确。
* Swifter.Json 第一次执行需要额外的时间来生成一个 “操作类” (FastObjectRW<T>),
	则会越来越快。所以如果您的程序需要长期运行,那么 Swifter.Json 是您优的选择。
	如果您的程序不适用这种模式,那么下面介绍的 XObjectRW<T> 也许适合您。

原理

(1): 最优秀的整型和浮点型 ToString 和 Parse 方法实现。
(2): Emit 实现的高性能对象映射工具。
(3): 本地内存分配!拒绝 .Net 托管二次内存。
(4): 使用线程缓存,让您的程序运行越久速度越快。
(5): 内部全指针运算,相当于使用了 .Net Core 新技术 Span<T>!

测试时其他库所使用的版本

本文地址:https://www.codercto.com/soft/d/12205.html

从点子到产品

从点子到产品

刘飞 / 电子工业出版社 / 2017-1-1 / 49.00元

《从点子到产品:产品经理的价值观与方法论》以产品经理的方法论与价值观为主线,讲述了产品经理在从点子到产品的过程中应该考虑的问题、思考问题的思路,以及如何解决问题的方法。第一部分主要讲述从粗略的点子到具体的方案,要经历的步骤。第二部分主要讲述如何落实方案,以及如何进行用户研究、需求分析和产品设计。第三部分主要讲述在落实方案的过程中要掌握的方法和管理技巧。最后一部分主要讲述产品经理在工作和成长过程中要......一起来看看 《从点子到产品》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具