1. 程式人生 > >UTC時間與北京時間相互轉換

UTC時間與北京時間相互轉換

第一種方法

時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。
public class HomeController : Controller
{
    public ActionResult Index()
    {
        //本地時間(北京時間)
        DateTime dt = Convert.ToDateTime("2016-06-11 23:59:59");

        //TimeZone類表示時區,TimeZone.CurrentTimeZone方法:獲取當前計算機的時區。
        TimeZone tz = TimeZone.CurrentTimeZone;

        //獲取當前計算機的時區與utc時間的時間差(北京時間和utc時間相差8個小時)
        TimeSpan ts = tz.GetUtcOffset(dt);

        //將當前計算機所在時區的時間(即:北京時間) 轉換成UTC時間
        DateTime dtGMT = tz.ToUniversalTime(dt);

        //將UTC時間轉換成本地時間
        DateTime localtime = tz.ToLocalTime(dtGMT);

        return View();
    }
}

第二種方法

public class HomeController : Controller
{
    public ActionResult Index()
    {
        //本地時間(北京時間)
        DateTime dt = Convert.ToDateTime("2016-06-11 23:59:59");

        //將北京時間轉換成utc時間 (北京時間是utc時間+8小時,所以此時utc時間應該是 2016-06-11 15:59:59)
        DateTime utcNow = dt.ToUniversalTime();

        //將utc時間轉換成秒 (即將1970-01-01 00:00:00 到 2016-06-11 15:59:59的時間轉換成秒)
        double utc = ConvertDateTimeInt(utcNow);

        //將秒數轉換成北京時間 (其實就是將utc時間轉換成北京時間),所以又得到2016-06-11 23:59:59
        DateTime dtime = ConvertIntDatetime(utc);
        
        return View();
    }


    /// <summary>
    /// 將時間轉換成秒(這個秒是指1970-1-1 00:00:00 到你指定的時間之間的秒數)
    /// </summary>
    /// <param name="time">指定時間</param>
    /// <returns>秒數</returns>
    public double ConvertDateTimeInt(System.DateTime time)
    {
        double intResult = 0;
        System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
        intResult = (time - startTime).TotalSeconds;
        return intResult;
    }

    /// <summary>
    /// 將秒數轉換成北京時間
    /// </summary>
    /// <param name="utc">秒數</param>
    /// <returns>北京時間</returns>
    public DateTime ConvertIntDatetime(double utc)
    {
        System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
        startTime = startTime.AddSeconds(utc);
        startTime = startTime.AddHours(8);//轉化為北京時間(北京時間=UTC時間+8小時 )
        return startTime;
    }
}


相關推薦

UTC時間北京時間相互轉換

第一種方法 時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。 public class HomeControlle

UTC時間北京時間的差多久

經常混淆於此,特地研究了一下,記錄在此以備忘。 整個地球分為二十四時區,每個時區都有自己的本地時間。在國際無線電通訊場合,為了統一起見,使用一個統一的時間,稱為通用協調時(UTC, Universal Time Coordinated)。UTC與格林尼治平均時(G

JAVA中時間字串的相互轉換(工具類)

<span style="font-size:24px;">//model為字串的時間格式,如"<span style="font-family: arial; line-heigh

linux時間北京時間同步

1.檢視linux所在時區,因為剛開系統時區不一定在中國 # date -R  2.安裝ntpdate服務 yum install ntpdate 3.選擇同步時區 Asia>China>beijing  4.修改時區 TZ='Asia/Shanghai'; e

mysql UNIX時間日期的相互轉換

數據庫 時間戳 now() 相互 from for time() 幫助 sel UNIX時間戳轉換為日期用函數: FROM_UNIXTIME()select FROM_UNIXTIME(1156219870); 日期轉換為UNIX時間戳用函數: UNIX_TIMESTAMP

python 時間日期的相互轉換

time.localtime() 和 time.strptime() 都得到 struct_time(時間陣列) time.strftime() 可以這麼理解 “string format time” 格式化 time.strptime() 可以理解為 “string parser time

js實現計算機時間時間格式之間的相互轉換

獲取計算機時間,轉換時間格式: var date1 = new Date(); var date_value1 = date1.getFullYear() + '-' + (date1.getMonth() + 1) + '-' + date1.get

C# Unix時間日期的相互轉換

public static string ConvertDateTimeToUnix(DateTime time) { return ((time.ToUniversalTime().Ticks - 621355968

iOS時間北京時間轉換

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatter

PHP 時間 日期的相互轉換(含mysql 中直接轉換

UNIX時間戳和格式化日期是我們常打交道的兩個時間表示形式,Unix時間戳儲存、處理方便,但是不直觀,格式化日期直觀,但是處理起來不如Unix時間戳那麼自如,所以有的時候需要互相轉換,下面給出PHP日期轉時間戳、MySQL日期轉換函式互相轉換的幾種轉換方式 寫

GMTUTC YYYY-MM-DDTHH:mm:ss.sssZ、YYYY-MM-DDTHH:mm:ss.sss+8:00意義及北京時間轉換

www. 中國 一個 href 轉換 橢圓 地球 com 相差 UTC: Universal Time Coordinated 協調世界時,又稱世界標準時間。 GMT: Greenwich Mean Time 格林尼治平均時。 格林尼治標準時間的正午是指當太陽橫穿格林尼

js時間戳、日期相互轉換

font 記得 -s ets pre urn getdate 方法 時間 開發過程中會遇到很多需要時間戳和標準時間相互轉化的需求,稍大型項目會引入類似moment.js,但對於簡單h5頁面,更多的需要簡單的方法來處理日期 /* timeStr:時間,格式可為:"S

PHP時間戳和日期相互轉換(文字有問題)

它的 內容 log dex 不同 cnblogs ont cti time() 在php中我們要把時間戳轉換日期可以直接使用date函數來實現,如果要把日期轉換成時間戳可以使用strtotime()函數實現,下面我來給大家舉例說明。 1.php中時間轉換函

C++時間字符串轉換

utc 不用 字符串 函數 參數形式 minute art timezone 時區 轉自:http://blog.csdn.net/educast/article/details/17239735 1、常用的時間存儲方式 1)time_t類型,這本質上是一個長整數

Python 時間戳和日期相互轉換

sds 工作 num 一定的 方便 number http times time  轉載地址:http://liyangliang.me/posts/2012/10/python-timestamp-to-timestr/   在寫Python的時候經常會遇到時間格式的問

如何利用C語言來獲取當地時間UTC時間 (設當地時間北京時間

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

ASP.NET MVC4下使用MongoDB實現時間戳和ObjectId相互轉換

Model層的類: public class ObjectIdModel { public string CreationDateTimeText { get; set; } public string ObjectIdText

Unix timestamp時間 普通時間 轉換方法

下面以java 轉換方法為例 說明 java時間轉換成unix timestamp import java.text.DateFormat; import java.text.Parse

ubuntu的JDK時區北京時間相差8個小時(Tomcat、Spring)

       問題再現:做網站javaWeb開發,把專案放到linux系統下面,啟動專案後,基於spring-boot的web專案輸出日誌時間不正確,相比本地時間晚8個小時,初步檢查問題發現系統時間是正確的(date指令)。         分析:晚剛好8個小時,北京是在東

python利用time進行時間時間戳之間的相互轉換

Note:原文:https://blog.csdn.net/lykio_881210/article/details/79422531 標準時間向時間戳轉換: 1、獲取標準時間 2、使用strptime()轉換成時間陣列 3、使用mktime()轉換成時間戳 時間戳轉換成