苏飞论坛

标题: 本地时间和GMT(UTC)时间的转换(C#) [打印本页]

作者: 站长苏飞    时间: 2014-8-28 16:17
标题: 本地时间和GMT(UTC)时间的转换(C#)

1.本地时间转成GMT时间
[C#] 纯文本查看 复制代码
/// <summary>  
    /// 本地时间转成GMT时间  
    /// </summary>  
    public static string ToGMTString(DateTime dt)  
    {  
        return dt.ToUniversalTime().ToString("r");  
    }  


[C#] 纯文本查看 复制代码
 /// <summary>  
    /// 本地时间转成GMT格式的时间  
    /// </summary>  
    public static string ToGMTFormat(DateTime dt)  
    {  
        return dt.ToString("r") + dt.ToString("zzz").Replace(":", "");  
    }  


[C#] 纯文本查看 复制代码
 /// <summary>  
    /// GMT时间转成本地时间  
    /// </summary>  
    /// <param name="gmt">字符串形式的GMT时间</param>  
    /// <returns></returns>  
    public static DateTime GMT2Local(string gmt)  
    {  
        DateTime dt = DateTime.MinValue;  
        try  
        {  
            string pattern = "";  
            if (gmt.IndexOf("+0") != -1)  
            {  
                gmt = gmt.Replace("GMT", "");  
                pattern = "ddd, dd MMM yyyy HH':'mm':'ss zzz";  
            }  
            if (gmt.ToUpper().IndexOf("GMT") != -1)  
            {  
                pattern = "ddd, dd MMM yyyy HH':'mm':'ss 'GMT'";  
            }  
            if (pattern != "")  
            {  
                dt = DateTime.ParseExact(gmt, pattern, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.AdjustToUniversal);  
                dt = dt.ToLocalTime();  
            }  
            else  
            {  
                dt = Convert.ToDateTime(gmt);  
            }  
        }  
        catch  
        {  
        }  
        return dt;  
    }  

转本地时间有更简单的方法
[C#] 纯文本查看 复制代码
 new DateTime().ToLocalTime()


作者: ofnhkb1    时间: 2014-8-28 16:18
强烈支持楼主ing……
作者: 站长苏飞    时间: 2014-8-28 16:21
说白了就是ToUniversalTime()和ToLocalTime()之间的相互转化而已
作者: Cheungnotes    时间: 2014-8-28 19:38
受教了学习中……
作者: minidick    时间: 2014-9-23 22:05
这个转换还是比较常见的,系统已经做好了。





欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4