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);
本文介绍两种方法来处理JSON中日期格式的问题:一是使用正则表达式进行替换;二是利用Json.NET提供的IsoDateTimeConverter进行序列化。
2042

被折叠的 条评论
为什么被折叠?



