L'en-tête HTTP Last-Modified contient la date au format suivant (exemple) :Wed, 09 Apr 2008 23:55:38 GMT
Quel est le moyen le plus simple d'analyser java.util.Date de cette chaîne ?
Réponses
Trop de publicités?DateUtil.parseDate(dateString)
d'apache http-components
(héritage : DateUtil.parseDate(dateString)
(de apache commons-httpclient))
Il a le format correct défini comme une constante, dont la conformité au protocole est garantie.
Java.time
Lorsque vous utilisez le nouveau API Java pour la date et l'heure le code serait simplement :
ZonedDateTime zdt = ZonedDateTime.parse("Wed, 09 Apr 2008 23:55:38 GMT", DateTimeFormatter.RFC_1123_DATE_TIME);
El DateTimeFormatter
prédéfinit une constante pour ce format particulier dans la classe RFC_1123_DATE_TIME
. Comme son nom l'indique, RFC 1123 définit ce format.
Si vous utilisez URLConnection
il existe déjà une méthode pratique.
Voir URLConnexion#getLastModified
Cette méthode analyse la chaîne de date et renvoie une valeur en millisecondes. Vous pouvez alors créer un Date
avec cette valeur.