unix timestamp dan penukaran objek DateTime Penjelasan terperinci
Banyak senario aplikasi perlu ditukarkan antara timestamp UNIX dan objek DateTime. UNIX Timestamp mewakili bilangan detik sejak era UNIX (1 Januari 1970 00:00:00 UTC), dan objek DateTime mewakili masa dengan cara yang lebih intuitif, termasuk komponen tarikh dan masa tertentu.
ditukar dari timestamp unix ke objek DateTime
Tukar timestamp UNIX ke objek DateTime, anda boleh menggunakan kaedah berikut:
untuk pemaju Java, kerana cap waktu adalah dalam milisaat, kaedah penukaran berbeza:
<code class="language-csharp">public static DateTime UnixTimeStampToDateTime(double unixTimeStamp) { // Unix 时间戳是自纪元以来的秒数 DateTime dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); dateTime = dateTime.AddSeconds(unixTimeStamp).ToLocalTime(); return dateTime; }</code>
<code class="language-java">public static DateTime JavaTimeStampToDateTime(long javaTimeStamp) { // Java 时间戳是自纪元以来的毫秒数 DateTime dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); dateTime = dateTime.plusMillis((long) javaTimeStamp).toLocalTime(); return dateTime; }</code>
Penukaran songsang boleh menggunakan serpihan kod berikut:
Untuk Java, kaedah menukar objek DateTime ke dalam timestamp Java (milisaat) adalah seperti berikut:
<code class="language-csharp">public double DateTimeToUnixTimeStamp(DateTime dateTime) { // Unix 时间戳是自纪元以来的秒数 DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); TimeSpan span = (dateTime - epoch).ToLocalTime(); return span.TotalSeconds; }</code>
Atas ialah kandungan terperinci Bagaimana cara menukar antara cap waktu UNIX dan objek DateTime?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!