<.> Dans le .NET et Java pour convertir les horodatages Unix et les objets DateTime
Dans .NET ou Java, il est souvent nécessaire de convertir entre l'horodatage Unix (le nombre de secondes ou de millisecondes depuis l'ère) et l'objet DateTime.
Convertir l'horodatage Unix en DateTime
Dans .NET, utilisez le code suivant pour convertir un horodatage UNIX (en secondes) aux dates:
En Java, l'horodatage est en millisecondes, et ce code est utilisé:
<code class="language-C#">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">// Java代码示例,此处应使用Java的日期时间类,而非.NET的DateTime public static java.time.LocalDateTime JavaTimeStampToDateTime(long javaTimeStamp) { return java.time.Instant.ofEpochMilli(javaTimeStamp).atZone(java.time.ZoneId.systemDefault()).toLocalDateTime(); }</code>
Pour convertir DateTime en horodatage Unix, inversez simplement le processus:
Veuillez noter que l'exemple Java utilise la classe dans le package
fourni par les versions Java 8 et supérieures, qui fournit une méthode de traitement de date et de temps plus moderne et plus robuste que l'ancien<code class="language-C#">public double DateTimeToUnixTimeStamp(DateTime dateTime) { DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); TimeSpan span = dateTime.ToUniversalTime() - epoch; return span.TotalSeconds; }</code>
<code class="language-java">// Java代码示例 public static long DateTimeToJavaTimeStamp(java.time.LocalDateTime dateTime) { return dateTime.atZone(java.time.ZoneId.systemDefault()).toInstant().toEpochMilli(); }</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!