How to parse Date from HTTP Last-Modified header?

前端 未结 5 1985
孤街浪徒
孤街浪徒 2020-12-08 00:02

HTTP Last-Modified header contains date in following format (example):
Wed, 09 Apr 2008 23:55:38 GMT
What is the easiest way to parse java.util.

相关标签:
5条回答
  • 2020-12-08 00:32

    This should be pretty close

    String dateString = "Wed, 09 Apr 2008 23:55:38 GMT";
    SimpleDateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz");
    Date d = format.parse(dateString);
    

    SimpleDateFormat

    0 讨论(0)
  • 2020-12-08 00:34

    If you're using URLConnections, there is already a handy method.

    See URLConnection#getLastModified

    This method parses the date string and returns a milliseconds value. Then you can happily create a Date with that value.

    0 讨论(0)
  • 2020-12-08 00:38

    DateUtil.parseDate(dateString) from apache http-components

    (legacy: DateUtil.parseDate(dateString) (from apache commons-httpclient))

    It has the correct format defined as a Constant, which is guaranteed to be compliant with the protocol.

    0 讨论(0)
  • 2020-12-08 00:41

    java.time

    When using the new Java Date and Time API the code would simply be:

    ZonedDateTime zdt = ZonedDateTime.parse("Wed, 09 Apr 2008 23:55:38 GMT", DateTimeFormatter.RFC_1123_DATE_TIME);
    

    The DateTimeFormatter class pre-defines a constant for that particular format in RFC_1123_DATE_TIME. As the name suggests, RFC 1123 defines that format.

    0 讨论(0)
  • 2020-12-08 00:48

    RFC 2616 defines three different date formats that a conforming client must understand.

    The Apache HttpClient provides a DateUtil that complies with the standard:

    https://hc.apache.org/httpcomponents-client-4.3.x/httpclient/apidocs/org/apache/http/client/utils/DateUtils.html

    https://apache.googlesource.com/httpclient/+/4.3.x/httpclient/src/main/java/org/apache/http/client/utils/DateUtils.java

    Date date = DateUtils.parseDate( headerValue );

    0 讨论(0)
提交回复
热议问题