Java 如果修改自日期格式
我正在编写一个服务器,我想检查“If Modified Since:”标题。Java 如果修改自日期格式,java,date,date-format,Java,Date,Date Format,我正在编写一个服务器,我想检查“If Modified Since:”标题。 既然有这么多的日期方法,我应该考虑哪些方法来检查,就像通常的方法(在浏览器中使用毫秒)… 以下是我为毫秒格式所做的: Date date; //dateS is a substring of If-Modified-Since: header try{ long mills = Long.parseLong(dateS); } catch (NumberFormatException e) {e
既然有这么多的日期方法,我应该考虑哪些方法来检查,就像通常的方法(在浏览器中使用毫秒)… 以下是我为毫秒格式所做的:
Date date;
//dateS is a substring of If-Modified-Since: header
try{
long mills = Long.parseLong(dateS);
} catch (NumberFormatException e)
{e.printStackTrace();
}
date = new Date(mills);
我还要检查“Wed,2005年10月19日10:50:00GMT”格式。如何将该日期更改为毫秒
SimpleDateFormat dateFormat = new SimpleDateFormat(
"EEE, dd MMM yyyy HH:mm:ss z");
// to check if-modified-since time is in the above format
try {
ifModifiedSince = dateFormat.parse(date);
?????????????????????
} catch (ParseException e1) {
}
请帮助我更改上述内容,并告诉我是否有任何日期格式需要我检查…由于您已经有了
日期对象,您可以使用:
long timeInMillis = ifModifiedSince.getTime();
HTTP应用程序历史上允许使用三种不同的格式来表示日期/时间戳:
Sun, 06 Nov 1994 08:49:37 GMT ; RFC 822, updated by RFC 1123
Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format
HTTP/1.1 RFC.中的更多详细信息已经得到了回答,我相信:[[1]:浏览器使用毫秒作为最后修改的日期,因为这是我在所有浏览器的请求头中得到的,我指的是使用format.parse(dateString).getTime()链接;