C# JSON序列化日期格式问题

Posted xuelei被占用了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# JSON序列化日期格式问题相关的知识,希望对你有一定的参考价值。

默认序列化日期为1970至今的时间戳

需要在json.convert中做一些设置

          //javascriptSerializer js = new JavaScriptSerializer();
            IsoDateTimeConverter timeConverter = new IsoDateTimeConverter();
            //这里使用自定义日期格式,如果不使用的话,默认是ISO8601格式  
            //timeConverter.DateTimeFormat = "yyyy‘-‘MM‘-‘dd‘ ‘HH‘:‘mm‘:‘ss";
            timeConverter.DateTimeFormat = "yyyy‘-‘MM‘-‘dd";
            return JsonConvert.SerializeObject(t, Formatting.Indented, timeConverter);
        //    string result = js.Serialize(t);

  这样格式就是 yyyy-MM-dd了

也可以在js中进行处理

 

//C#序列化时间转化
function ParseDate(item) {

    var timestamp = item.substring(6, 15);
    var d = new Date(timestamp * 1000);  //根据时间戳生成的时间对象
    return (d.getFullYear()) + "-" +
               (d.getMonth() + 1) + "-" +
               (d.getDate()) + " " +
               (d.getHours()) + ":" +
               (d.getMinutes()) + ":" +
               (d.getSeconds());

}
//C#序列化时间转化短日期
function ParseShortDate(item) {
    var time = (ParseDate(item)).substring(0, 9);
    return time;
}

  

以上是关于C# JSON序列化日期格式问题的主要内容,如果未能解决你的问题,请参考以下文章

C# Newtonsoft.Json JsonSerializerSettings 全局序列化设置

c#中的JSON DateTime序列化处理一位数和两位数小时

4种解决json日期格式问题的办法

使用 ObjectMapper 将 JSON 日期格式从 ZonedDateTime 序列化为自定义日期格式

无法在 C# 中反序列化 JSON 结果。输入字符串格式不正确错误

如何使用 C# 在 .NET 中获取格式化的 JSON?