在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Newtonsoft.Json.dll(获取最新版,我使用的是8.0)提供了非常好的Json序列化和反序列化方式,但是对日期的处理却让我纠结了很久。首先定义类如下: public class Student{ public int Id{get;set;} public string Name{get;set;} public DateTime BirthDay{get;set;} } 序列化代码如下: Student stu = new Student() { Id = 1, Name = "zhangsan", BirthDay = DateTime.Now }; String result = Newtonsoft.Json.JsonConvert.SerializeObject(stu); Console.WriteLine(result); Console.ReadLine(); 结果是:{"Id":1,"Name":"zhangsan","BirthDay":"2016-08-03T17:23:54.2480422+08:00"} 修改代码如下: Student stu = new Student() { Id = 1, Name = "zhangsan", BirthDay = DateTime.Now }; Newtonsoft.Json.Converters.IsoDateTimeConverter timeConverter = new Newtonsoft.Json.Converters.IsoDateTimeConverter(); //这里使用自定义日期格式,如果不使用的话,默认是ISO8601格式 timeConverter.DateTimeFormat = "yyyy-MM-dd HH:mm:ss"; String result = Newtonsoft.Json.JsonConvert.SerializeObject(stu, Newtonsoft.Json.Formatting.None, timeConverter); Console.WriteLine(result); Console.ReadLine(); 结果是:{"Id":1,"Name":"zhangsan","BirthDay":"2016-08-03 17:32:03"} 另,延伸方法: public static DataTable ConvertToDataTable(string json) 感谢好友:http://www.cnblogs.com/duanjt/p/5733791.html |
请发表评论