您好,登錄后才能下訂單哦!
這篇文章主要介紹了怎么將Java與C#時間進行互相轉換的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇怎么將Java與C#時間進行互相轉換文章都會有所收獲,下面我們一起來看看吧。
JAVA統計從1970年1月1日起的毫秒的數量表示日期。也就是說,例如,1970年1月2日,是在1月1日 后的86,400,000毫秒。同樣的,1969年12月31日是在1970年1月1日前86,400,000毫秒。Java的Date類使用long類 型紀錄這些毫秒值.因為long是有符號整數,所以日期可以在1970年1月1日之前,也可以在這之后。Long類型表示的最大正值和最大負值可以輕松的 表示290,000,000年的時間,這適合大多數人的時間要求。
Java中可以用System.currentTimeMillis() 獲取當前時間的long形式,它的標示形式是從1970年1月1日起的到當前的毫秒的數。
C# 日期型數據的長整型值是自 0001 年 1 月 1 日午夜 12:00,以來所經過時間以100 毫微秒為間隔表示時的數字。這個數在 C# 的 DateTime 中被稱為Ticks(刻度)。DateTime 類型有一個名為 Ticks 的長整型只讀屬性,就保存著這個值。
需要注意的是因為我們在東八區且我們使用的是System.DateTime.Now
,所以需要在最后增加8個小時。
long time_JAVA_Long = 1207969641193;//java長整型日期,毫秒為單位 DateTime dt_1970 = new DateTime(1970, 1, 1, 0, 0, 0); long tricks_1970 = dt_1970.Ticks;//1970年1月1日刻度 long time_tricks = tricks_1970 + time_JAVA_Long * 10000;//日志日期刻度 DateTime dt = new DateTime(time_tricks).AddHours(8);//轉化為DateTime
下面的這段源碼使用了System.DateTime.UtcNow
更簡單
TimeSpan ts=new TimeSpan( System.DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1, 0, 0, 0).Ticks); (long)ts.TotalMilliseconds;
/// 日期轉換 public java.util.Date DateConvert(DateTime date){ DateTime nTime = date.AddHours(-8); long ctime = nTime.Ticks; long c1970 = new DateTime(1970,1,1).Ticks; long java_ticks = (ctime - c1970)/10000; java.util.Date jDate = new java.util.Date(java_ticks); return jDate; }
關于“怎么將Java與C#時間進行互相轉換”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“怎么將Java與C#時間進行互相轉換”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。