C#獲取時間戳的方法及時間戳轉換問題
因為一些原因,原本學Java的我,也兼顧了C#,做了好幾個差不多相同的項目,就那么一個月的時間,總覺得,學了兩年的Java算是白學了,這里吧,我的意思不是說真的白學啥的,只是想告訴大家,想真的學好一門語言,最重要的還是邊學邊應用,只有將學到的實際應用上去,才能真正學明白,學懂吧。
所以在此,留下一篇我學習C#遇見的問題吧,有關時間戳和日期互換的問題,找了不少地方有的講不清,有的要收米,真的挺不容易的哎。希望大家能好好學哈。
注意:一定要注意我后面的每個除數,數值的差距,會導致時間的不同?。?!千萬注意!??!尤其是最后一個案例,時間戳轉成日期的那個,除數和乘數的關系!
一:日期轉化成時間戳
// 當前日期轉換成時間戳 long time1 = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000;
案例圖:

二:將當前日期的前后指定的天數轉換成時間戳
// 將當前日期的前后指定的天數轉換成時間戳 long time2 = ((DateTime.Now.AddDays(i).ToUniversalTime().Ticks - 621355968000000000) / 10000000); // 將當前日期的前后指定的天數轉換成時間戳 // 只獲取年月日的日期時間戳 long time2 = ((DateTime.Now.AddDays(i).Date.ToUniversalTime().Ticks - 621355968000000000) / 10000000);
案例圖:


三:將指定日期轉換成時間戳:如 2022-8-22 22:56:30
// 將指定日期轉換成時間戳:如 2022-8-22 22:56:30 long time3 = ((new DateTime(2022,8,22,22,56,30).ToUniversalTime().Ticks - 621355968000000000) / 10000000);
案例圖:

四:將時間戳轉換成日期
// 獲取一個時間戳long time4 = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000;// 時間戳的開始時間DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));// 這個我也不太明白,照抄吧,加油!有知道的大佬,評論一下,給我講解一下,謝謝!TimeSpan toNow = new TimeSpan(time4 * 10000000);// 這里看個人需求,我的需求就是得到字符串形式的日期:2022-8-22String targetDt = dtStart.Add(toNow).ToString("yyyy-MM-dd");// 原數據DateTime targetDt = dtStart.Add(toNow);案例圖:

注:時間戳后面那個除數,具體大小自己看需求決定。千萬要注意這個除數,很重要!
到此這篇關于C#獲取時間戳的方法及時間戳轉換問題的文章就介紹到這了,更多相關C#獲取時間戳及時間戳轉換內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

