如何将"Sun Sep 02 2012 08:00:00 GMT+0800 (中国标准时间)" 这个字符串 给转成date类型?

2024-10-29 08:17:51
推荐回答(2个)
回答1:

'Sun Sep 02 2012 08:00:00 GMT+0800 (中国标准时间)'--此格式日期无法传到java后台,须格式化(date类型),方法如下

var d = new Date('Thu May 12 2016 08:00:00 GMT+0800 (中国标准时间)');  

youWant=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();

扩展资料:

中国现代时间标准是中国科学院国家授时中心(英文缩写为NTSC)建立并保持的原子时标准,其学术代号记为TA(NTSC),民用时间标准也是由该中心建立并保持的协调世界时,记为UTC(NTSC)。人们通常所说的中国标准时间,就是协调世界时UTC(NTSC)。

现代国际时间的计量标准是国际原子时。它的基本单位是秒。一个原子时秒的长度是铯原子跃迁振荡9192631770周所持续的时间。更长的时间单位由秒的累加而得。

国际原子时由设在法国巴黎的国际权度局(BIPM)建立并保持。BIPM分析处理全世界约50个时间实验室的200多台原子钟数据,得到综合时间尺度——国际原子时。中国科学院国家授时中心参与国际原子时的建立。目前,国家授时中心有19台铯原子钟和4台氢原子钟的数据定期传送给BIPM,是对国际原子时的建立和保持作出贡献的主要实验室之一。

回答2:

首先要把后面中文去掉,因为已经有GMT时区信息,少了这个也没问题。然后要把GMT+0800改成GMT+08:00,这样才是General time zone的正确表示法(至少sun的标准如此),然后用java.text.SimpleDateFormat:

String s = "Sun Sep 02 2012 08:00:00 GMT+08:00";
SimpleDateFormat sf = new SimpleDateFormat("EEE MMM dd yyyy hh:mm:ss z",Locale.ENGLISH);
Date d = sf.parse(s);