newtonSoft.Json随笔
简介
基本
导入依赖
引入
using Newtonsoft.Json;
using Newtonsoft.Json.Linq; // 使用 JArray 和 JObject
序列化
JsonConvert.SerializeObject(字符串)
public static string SerializeObject(object value, Formatting formatting = Formatting.None, JsonSerializerSettings settings = null)
//其中value表示被序列化的对象,formatting表示JSON字符串格式化选项,settings表示序列化时用到的设置。
序列化显示不同名称
在某些情况下,我们需要将对象的属性名序列化为不同的名称。可以使用JsonPropertyAttribute来指定序列化时的属性名。

Formatting选项
-
默认情况下,序列化时不进行格式化
![]()
-
格式化选择,Formatting.Indented
![]()
settings设置
1-日期格式化,默认时,只能将日期时间格式化为UTC样式。
JsonSerializerSettings settings = new JsonSerializerSettings
{
DateFormatString = "yyyy-MM-dd HH:mm:ss" //设置日期格式化字符串
};
Person person = new Person() { Name="张三",Age=23,born=DateTime.Now};
string jsonStr = JsonConvert.SerializeObject(person, Formatting.Indented,settings);

2-剔除实例的默认值的枚举
new JsonSerializerSettings
{
DefaultValueHandling = DefaultValueHandling.Ignore
}
3-空值的处理
setting.NullValueHandling = NullValueHandling.Ignore; //空值不枚举出来

应用设定后



浙公网安备 33010602011771号