`
linkyou66
  • 浏览: 228561 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

关于通过Date.getTime()得到1970年01月1日0点零分问题验证

 
阅读更多
<p>我的博客:通常认为Date.getTime()可以得到得到1970年01月1日0点零分以来的毫秒数,经过实践证明是错误的</p>
<p>实际上通过Date.getTime()的到的是1970年01月01日8点中以来的毫秒数,</p>
<p>实践代码如下</p>
<p>public static String getTimestamp_1970() throws Exception {<br>java.text.SimpleDateFormat formater = new SimpleDateFormat(<br>"yyyy-MM-dd HH:mm:ss");<br>java.util.Date date= formater.parse("1970-01-01 08:00:00"); <br>return Long.toString(date.getTime());<br>}</p>
<p>如果调用上面的函数,返回值为0</p>
<p>但是如果调用</p>
<p>public static String getTimestamp_1970() throws Exception {<br>java.text.SimpleDateFormat formater = new SimpleDateFormat(<br>"yyyy-MM-dd HH:mm:ss");<br>java.util.Date date= formater.parse("1970-01-01 00:00:00"); <br>return Long.toString(date.getTime());<br>}</p>
<p>返回-28800000</p>
<p>作为一个软件测试者要相信:只有测过的才是可信的!</p>
<p><a rel="nofollow" href="http://hi.csdn.net/yhntgbty" target="_blank">yhntgbty</a>发表于2009-03-15 17:23:23IP: 125.33.197.*</p>
<p></p>
<dd>看到这篇文章,忍不住要说几句。<br>朋友你错了!<br>你没有理解时间的计算机制。计算机系统里面的时间有两个,<br>一个叫做系统时间,一个叫做本地时间。<br>什么是系统时间?就是跟那个什么子午线的地方一致的时间,计算机如果运行正常的话,世界上所有的计算机的系统时间都应该是相同的。但是问题来了,我们有一个时区的概念,虽然所有的计算机的系统时间相同,但是他们的本地时间不一样,比如在那个子午线上的时间是1970-01-01 00:00:00的系统时间的时候,他的本地时间也是1970-01-01 00:00:00。但是在这个时候的中国,处在东八区,它的本地时间比那个时间快八个小时,也就是1970-01-01 08:00:00。注意这只是本地时间不一致,这时候在中国的计算机的系统时间,仍然是1970-01-01 00:00:00。 现在你明白为什么了么?<br>你就没想一下为什么是八个小时,而不是七个小时或者九个小时么? 好累。。。 </dd>
<p></p>
<p>非常感谢yhntgbty的回复,特将回复剪切到文章中来,一方面免得其他读者被我糊弄</p>
<p>二来激励自己以后除了测试验证之外,再多问个为什么,进一步研究。加油!!!</p>
分享到:
评论

相关推荐

    JAVA new Date()或Calendar.getInstance().getTime()得到的时间不对

    NULL 博文链接:https://ollevere.iteye.com/blog/1320854

    javascript 倒计时

    //月(parseInt(x,10)将变量转成10进制数),注意:月是“0,1,2,3,4,5,6,7,8,9,10,11,” var ri=parseInt(dqTime.substr(8,2),10);//日 var shi=parseInt(dqTime.substr(11,2),10);//时 var fen=parseInt...

    判断2个时间大小

    //年-月-日 时-分 try { Date date1 = dateFormat.parse(startTime);//开始时间 Date date2 = dateFormat.parse(endTime);//结束时间 // 1 结束时间小于开始时间 2 开始时间与结束时间相同 3 结束时间大于开始...

    JavaScript中的getTime()方法使用详解

    由getTime方法返回的值是毫秒自1970年1月1日00:00:00的数。 您可以使用此方法来帮助指定日期和时间到另一个Date对象。 语法 Date.getTime() 下面是参数的详细信息: NA 返回值: 返回按照通用时间对应于时间为指定...

    java DATE与时间戳互化

    Exception in thread "main" java.text.ParseException: Unparseable date: "1970-01-06 11:45:55" 改正: //Date或者String转化为时间戳 SimpleDateFormat format = new SimpleDateFormat( " yyyy-MM-dd HH:mm...

    warped-time:s提供与Date.getTime()等效的选项,具有可变的进度速度和可选的服务器时间同步

    扭曲时间:控制时间的进度 :play_button: | | | 简单的Javascript库,提供与Date.getTime()等效的变量,并且具有可变的进度速度。 它有一个钩子来接收时间戳和估计的延迟,用于与后端服务器的时间保持同步。yarn add...

    vue element ui 时间选择器设置

    需求:设置时间选择器,只能选择2018-01-01之后切小于当前时间的数据 data() { return { pickerOptions0: { disabledDate: time =&gt; { // 使用2018年的毫秒时间戳判断 return time.getTime() Date.now(); } ...

    计算工作日

    //把起始日都修正到星期六 javascript的星期从0开始,所以+1来处理 var sDayofWeek = from.getDay()+1; var workdays=0; //修正到星期六之后,再修正多出来的非假日 if(sDayofWeek &gt; 1 && sDayofWeek ) { from...

    javascript 元旦倒计时的代码

    var yd_date = new Date("01/01/2024"); var yd_time = yd_date.getTime(); var one_second = 1000; var one_minute = one_second * 60; var one_hour = one_minute * 60; var one_day = one_hour * 24; ...

    Delphi getTime 获取当前日期时间实例源码.rar

    Delphi getTime 获取当前日期时间,用的是DateTimeToStr,运行本窗口后,自动获取当前电脑上的时间,显示在窗体指定的Lable标签中,这是核心的源代码:  procedure TForm1.Timer1Timer(Sender: TObject);  begin ...

    date-algo:字谜,咖喱等也包括在内

    -- date.getTime () will return milliseconds since Jan 1, 1970, 00:00:00.000 GMT -- &gt; if (date3.getTime() &gt; date1.getTime () & & date3.getTime () &lt; date2.getTime ()) { console.log( ' Given date is...

    解决苹果ios用js的Date()出现NaN的问题

    ios使用如下方法获得NaN,安卓手机则是正常计算,解决方法是换个这个时间的格式 new Date(2017-04-28 23:59:59).getTime() 换成如下方式就正常了,就是‘-‘换成‘/’ new Date(2017/04/28 23:59:59).getTime() ...

    jQuery实现强制cookie过期方法汇总

    date.setTime(date.getTime() + (x * 60 * 1000)); $.cookie('example', 'foo', { expires: date }); 方法二: [removed] var expiresDate= new Date(); expiresDate.setTime(expire.getTime() + (? * 60 * 1000))...

    人事管理系统静态页面

    Date.monthNames=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"];Date.abbrMonthNames=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月",...

    Android GPS时间转本地时间

    android gps开发获取的时间“location.getTime()”,转换为本地北京时间的代码,经测试绝对好用。

    深入理解javascript的getTime()方法

    getTime 方法的返回值一个数值,表示从1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。 例子: 使用 getTime() 复制日期对象 创建一个拥有相同时间值的日期对象。 var birthday = ...

    java时间格式大全(算法源码)

    long Time = (date1.getTime() / 1000) + Integer.parseInt(jj) * 60; date1.setTime(Time * 1000); mydate1 = format.format(date1); } catch (Exception e) { } return mydate1; } /** * 得到一个时间延后...

    java时间处理工具类--DateUtils

    Date date = getFirstDayOfTendays(offset + 1); cal.setTime(date); cal.add(Calendar.DAY_OF_MONTH, -1); return cal.getTime(); } /** * 获取周的第一天(MONDAY) * * @param offset * 偏移量...

    个人网站的素材

    1、如何将java.util.Date转化为java.sql.Date?转化:java.sql.Date sd;java.util.Date ud;//initialize the ud such as ud = new java.util.Date();sd = new java.sql.Date(ud.getTime());2、如果要插入到数据库...

    nodejs如何获取时间戳与时间差

     1.new Date().getTime()  2.Date.now()  3.process.uptime()  4.process.hrtime() 平时想获取一个时间戳的话,用这些方法都可以,那么这些方法有什么区别呢? new Date().getTime()和Date.now() 这些...

Global site tag (gtag.js) - Google Analytics