C# DateTime與時(shí)間戳轉(zhuǎn)換實(shí)例
C# DateTime與時(shí)間戳的相互轉(zhuǎn)換,包括JavaScript時(shí)間戳和Unix的時(shí)間戳。
1. 什么是時(shí)間戳
首先要清楚JavaScript與Unix的時(shí)間戳的區(qū)別:
JavaScript時(shí)間戳:是指格林威治時(shí)間1970年01月01日00時(shí)00分00秒(北京時(shí)間1970年01月01日08時(shí)00分00秒)起至現(xiàn)在的總毫秒數(shù)。
Unix時(shí)間戳:是指格林威治時(shí)間1970年01月01日00時(shí)00分00秒(北京時(shí)間1970年01月01日08時(shí)00分00秒)起至現(xiàn)在的總秒數(shù)。
可以看出JavaScript時(shí)間戳總毫秒數(shù),Unix時(shí)間戳是總秒數(shù)。
比如同樣是的 2016/11/03 12:30:00 ,轉(zhuǎn)換為JavaScript時(shí)間戳為 1478147400000;轉(zhuǎn)換為Unix時(shí)間戳為 1478147400。
2. JavaScript時(shí)間戳相互轉(zhuǎn)換
2.1 C# DateTime轉(zhuǎn)換為JavaScript時(shí)間戳
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 當(dāng)?shù)貢r(shí)區(qū) long timeStamp = (long)(DateTime.Now - startTime).TotalMilliseconds; // 相差毫秒數(shù) System.Console.WriteLine(timeStamp);
2.2 JavaScript時(shí)間戳轉(zhuǎn)換為C# DateTime
long jsTimeStamp = 1478169023479; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 當(dāng)?shù)貢r(shí)區(qū) DateTime dt = startTime.AddMilliseconds(jsTimeStamp); System.Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss:ffff"));
3. Unix時(shí)間戳相互轉(zhuǎn)換
3.1 C# DateTime轉(zhuǎn)換為Unix時(shí)間戳
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 當(dāng)?shù)貢r(shí)區(qū) long timeStamp = (long)(DateTime.Now - startTime).TotalSeconds; // 相差秒數(shù) System.Console.WriteLine(timeStamp);
3.2 Unix時(shí)間戳轉(zhuǎn)換為C# DateTime
long unixTimeStamp = 1478162177; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 當(dāng)?shù)貢r(shí)區(qū) DateTime dt = startTime.AddSeconds(unixTimeStamp); System.Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss:ffff"));
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
DevExpress實(shí)現(xiàn)TreeList按條件隱藏節(jié)點(diǎn)CheckBox的方法
這篇文章主要介紹了DevExpress實(shí)現(xiàn)TreeList按條件隱藏節(jié)點(diǎn)CheckBox的方法,需要的朋友可以參考下2014-08-08C#中string和StingBuilder內(nèi)存中的區(qū)別實(shí)例分析
這篇文章主要介紹了C#中string和StingBuilder內(nèi)存中的區(qū)別,以實(shí)例形式演示了二者在內(nèi)存中的不同之處,需要的朋友可以參考下2014-09-09C# Form自定義光標(biāo)的簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要介紹了C# Form自定義光標(biāo)的簡(jiǎn)單實(shí)現(xiàn),有需要的朋友可以參考一下2014-01-01C#通過oledb訪問access數(shù)據(jù)庫的方法
這篇文章主要介紹了C#通過oledb訪問access數(shù)據(jù)庫的方法,實(shí)例分析了C#操作access數(shù)據(jù)庫的相關(guān)技巧,需要的朋友可以參考下2015-06-06用?FieldMask?提高?C#?gRpc?的服務(wù)性能
這篇文章主要介紹了用?FieldMask?提高?C#?gRpc?的服務(wù)性能,FieldMask?是一個(gè)?protobuf?消息,包含一個(gè)名為?paths?的字段,用于指定用于指定讀取操作返回或更新操作修改的字,下文詳細(xì)內(nèi)容,需要的朋友可以參考一下2022-03-03C#實(shí)現(xiàn)較為實(shí)用的SQLhelper
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)較為實(shí)用SQLhelper的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10CPF?使用C#的Native?AOT?發(fā)布程序的詳細(xì)過程
這篇文章主要介紹了CPF?使用C#的Native?AOT?發(fā)布程序,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具體一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03