Maison > base de données > tutoriel mysql > le corps du texte

Pourquoi SimpleDateFormat.parse renvoie-t-il un format différent de celui spécifié ?

Susan Sarandon
Libérer: 2024-10-27 16:10:02
original
909 Les gens l'ont consulté

 Why Does SimpleDateFormat.parse Return a Different Format Than Specified?

SimpleDateFormatter.parse donnant une sortie dans un format différent de celui spécifié

Cette question se pose lorsque vous essayez de convertir un horodatage UNIX en une date avec un formater en utilisant SimpleDateFormat. Malgré le réglage du format souhaité, le résultat sdf.parse apparaît dans un format différent.

Solution :

Pour résoudre ce problème, il est recommandé d'éviter de transmettre les dates comme chaînes à une base de données MySQL. Au lieu de cela, il est plus sûr et plus concis de transmettre des objets de date, en particulier des instances de l'API de date et d'heure Java (java.time). Un objet LocalDateTime convient dans ce cas :

<code class="java">String ep = "a1527069600";
long epoch = Long.parseLong(ep.substring(1));
Instant inst = Instant.ofEpochSecond(epoch);
LocalDateTime ldt = inst.atZone(ZoneId.of("Asia/Calcutta")).toLocalDateTime();</code>
Copier après la connexion

Pour le stockage de la base de données, LocalDateTime représente la date et l'heure au format '2018-05-23T15:30'.

Pour conserver le LocalDateTime dans un Base de données MySQL :

<code class="java">PreparedStatement ps = myDatabaseConnection.prepareStatement(
                "insert into my_table (my_date_time) values (?)");
    ps.setObject(1, ldt);</code>
Copier après la connexion

Alternative pour les valeurs UTC :

Si les valeurs de la base de données doivent être stockées en UTC (temps universel coordonné), utilisez la conversion suivante :

<code class="java">LocalDateTime ldt = inst.atOffset(ZoneOffset.UTC).toLocalDateTime();</code>
Copier après la connexion

Avantages de l'utilisation de java.time :

  • Soulage les problèmes de formatage
  • Fournit une API de date et d'heure moderne et complète

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!