Jun 20, 2013
2 mins read
// 初始化DataContractJsonSerializer類別 DateTime d1 = DateTime.Now; DataContractJsonSerializer dcjs = new DataContractJsonSerializer(typeof(DateTime)); string jsonString = string.Empty;// 序列化資料 using (MemoryStream ms = new MemoryStream()) { dcjs.WriteObject(ms, d1); jsonString = Encoding.UTF8.GetString(ms.ToArray()); Console.WriteLine(jsonString); Console.WriteLine(); }
// 反序列化資料 using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString))) { DateTime d2 = (DateTime)dcjs.ReadObject(ms); Console.WriteLine(“d1:{0}, kind:{1}”, d1, d1.Kind); Console.WriteLine(“d2:{0}, kind:{1}”, d2, d2.Kind); }
Console.ReadLine();
// 建立一個JSON格式的資料 data = { "today": "\/Date(1371716206301+0800)\/"};// 看一下資料解析的樣子 data.today;
// 把前後的斜線去掉的樣子 data.today.replace(///g, “");
// 使用eval來得到日期 eval(“new " + data.today.replace(///g, “"))
// 使用reg取出ticks的部份 data.today.replace(//Date((.*?))//g, “$1”);
// parseInt轉成數字後也能得到日期 new Date(parseInt(data.today.replace(//Date((.*?))//g, “$1”)))
Sharing is caring!