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é:
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; }
// Java代码示例,此处应使用Java的日期时间类,而非.NET的DateTime public static java.time.LocalDateTime JavaTimeStampToDateTime(long javaTimeStamp) { return java.time.Instant.ofEpochMilli(javaTimeStamp).atZone(java.time.ZoneId.systemDefault()).toLocalDateTime(); }
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'ancienpublic 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; }
// Java代码示例 public static long DateTimeToJavaTimeStamp(java.time.LocalDateTime dateTime) { return dateTime.atZone(java.time.ZoneId.systemDefault()).toInstant().toEpochMilli(); }
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!