代码改变世界

JavaScriptSerializer的日期转换方案

2017-05-11 09:34  huoit  阅读(485)  评论(0编辑  收藏  举报

 

1、转换后过滤替换(通用)

/// <summary>
/// 日期转换
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string JsonDateTime(string str)
{
    str = Regex.Replace(str, @"\\/Date\((\d+)\)\\/", match =>
    {
    DateTime dt = new DateTime(1970, 1, 1);
    dt = dt.AddMilliseconds(long.Parse(match.Groups[1].Value));
    dt = dt.ToLocalTime();
    return dt.ToString("yyyy-MM-dd HH:mm:ss");
    });
    return str;
}

 

2、利用RegisterConverters

System.Web.Script.Serialization.JavaScriptSerializer类有一个RegisterConverters,这个类会注册一个