Conversion d'une chaîne ISO 8601 en java.util.Date : meilleures pratiques
Bonjour à tous ! Je suis un développeur Java débutant et j'ai rencontré un problème lors du parsing de dates. J'ai besoin de convertir des chaînes au format ISO 8601 (par exemple, "2023-10-05T14:30:00Z" ou "2023-10-05T17:30:00+03:00") en un objet java.util.Date.\n\nLe problème est que j'utilise SimpleDateFormat, mais il donne souvent des erreurs ou des résultats incorrects. Par exemple, la chaîne "2023-10-05T14:30:00Z" est parsée incorrectement, et "2023-10-05T17:30:00+03:00" provoque même une ParseException. Voici mon code :\n\n```java\nString dateString = "2023-10-05T14:30:00Z";\nSimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");\ntry {\n Date date = sdf.parse(dateString);\n System.out.println(date);\n} catch (ParseException e) {\n e.printStackTrace();\n}\n```\n\nJe comprends que 'Z' à la fin désigne UTC, mais SimpleDateFormat semble ne pas prendre en compte le fuseau horaire. De plus, lorsque j'ajoute un décalage, comme "+03:00", le format se casse.\n\nPouvez-vous me dire comment parser correctement les chaînes ISO 8601 en Java ? Peut-être existe-t-il des solutions prêtes à l'emploi ?
No answers yet.
Connectez-vous pour laisser une réponse
Blogs
Comment compter le nombre d'occurrences d'un caractère ou d'une sous-chaîne dans une chaîne en C# : 5 méthodes
L'opérateur ternaire en Go : comment remplacer C sans perdre la raison
WebSockets en C# : Créons des applications temps réel qui fonctionnent comme sur des roulettes