https://www.cnblogs.com/MichaelWillLee/p/6722428.html
https://blog.youkuaiyun.com/wilsonke/article/details/24362851
1、序列化后,用正则表达式调整;
#region 日期转换 reJson = Regex.Replace(reJson, @"\\/Date\((\d+)\)\\/", match => { DateTime datetime = new DateTime(1970, 1, 1); datetime = datetime.AddMilliseconds(long.Parse(match.Groups[1].Value)); datetime = datetime.ToLocalTime(); return datetime.ToString("yyyy-MM-dd"); }); #endregion
转换前:
{"iserror":"0","errmsg":"查询成功","data":[{"cardCTCC":"8924","cardBegin":"\/Date(1491926400000)\/","cardEnd":"\/Date(1523462400000)\/","isBegin":"已激活"}]}
转换后:
{"iserror":"0","errmsg":"查询成功","data":[{"cardCTCC":"8924","cardBegin":"2017-04-12","cardEnd":"2018-04-12","isBegin":"已激活"}]}
2、用Json的格式转换器 IsoDateTimeConverter
IsoDateTimeConverter convert = new IsoDateTimeConverter();
convert.DateTimeFormat = "yyyy-MM-dd HH:mm:ss.fff";
str = Newtonsoft.Json.JsonConvert.SerializeObject(obj, convert);