Jul 1, 2013
3 mins read
另外還有一種JavaScript格式,需要透過指定JavaScriptDateTimeConverter來轉換 反序列化的時後也需要明確指定,否則會出現錯誤
DateTime d = DateTime.Now;Console.WriteLine(“datetime:{0}\r\n”, d);
// ISO8601的格式 string jsonString1 = JsonConvert.SerializeObject(d); Console.WriteLine(“ISO8601 Date Format:{0}”, jsonString1); DateTime d1 = JsonConvert.DeserializeObject<DateTime>(jsonString1); Console.WriteLine(“datetime:{0}, kind:{1}\r\n”, d1, d1.Kind);
// Microsoft Date Format string jsonString2 = JsonConvert.SerializeObject( d, new JsonSerializerSettings() { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat }); Console.WriteLine(“Microsoft Date Format:{0}”, jsonString2); DateTime d2 = JsonConvert.DeserializeObject<DateTime>(jsonString2); Console.WriteLine(“datetime:{0}, kind:{1}\r\n”, d2, d2.Kind);
// JavaScript Date Format string jsonString3 = JsonConvert.SerializeObject(d, new JavaScriptDateTimeConverter()); Console.WriteLine(“JavaScript Date Format:{0}”, jsonString3); DateTime d3 = JsonConvert.DeserializeObject<DateTime>(jsonString3, new JavaScriptDateTimeConverter()); Console.WriteLine(“datetime:{0}, kind:{1}\r\n”, d3.ToLocalTime(), d3.Kind);
Console.ReadLine();
// 建立一個ISO8601格式的日期資料 d = {"today":"2013-07-01T15:21:47.6748196+08:00"}; // 日期會被當成字串 d.today; // 直接使用new Date得到日期 new Date(d.today)
Sharing is caring!