Maison > Java > javaDidacticiel > Comment convertir currentTimeMillis en une date avec un formatage spécifique aux paramètres régionaux ?

Comment convertir currentTimeMillis en une date avec un formatage spécifique aux paramètres régionaux ?

Susan Sarandon
Libérer: 2024-11-01 07:14:30
original
840 Les gens l'ont consulté

How to Convert currentTimeMillis to a Date with Locale-Specific Formatting?

Comment convertir currentTimeMillis en une date avec un formatage spécifique aux paramètres régionaux

Problème :

Lors de la conversion de millisecondes en date format utilisant SimpleDateFormat, le programme utilise la date de la machine, qui peut ne pas représenter l'heure correcte dans un fuseau horaire différent.

Solution :

Pour gérer ce problème avec élégance, vous pouvez utiliser les approches suivantes :

  • Java.util.Date :
<code class="java">Date date = new Date(millis);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss,SSS", Locale.US);
String formattedDate = sdf.format(date);</code>
Copier après la connexion
  • Java Time API (Java 8) :

Utilisation d'Instant et ZonedDateTime :

<code class="java">Instant instant = Instant.ofEpochMilli(millis);
ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(instant, ZoneId.of("US/Central"));

// Format the date
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss,SSS");
String formattedDate = zonedDateTime.format(formatter);</code>
Copier après la connexion

Utilisation de LocalDateTime :

<code class="java">LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, ZoneId.of("US/Central"));

// Format the date
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss,SSS");
String formattedDate = localDateTime.format(formatter);</code>
Copier après la connexion
  • Joda-Time (hérité)
<code class="java">DateTime jodaTime = new DateTime(millis, DateTimeZone.forTimeZone(TimeZone.getTimeZone("US/Central")));

// Format the date
DateTimeFormatter parser1 = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss,SSS");
String formattedDate = parser1.print(jodaTime);</code>
Copier après la connexion

En utilisant ces approches, vous pouvez convertir des millisecondes en un format de date dans une langue locale- manière spécifique, en veillant à ce que l'heure correcte soit représentée.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal