atitit.获取北京时间CST 功能api总结 O7

atitit.获取北京时间CST 功能api总结 O7

大家好,又见面了,我是全栈君。

atitit.获取北京时间CST 功能api总结 O7

 

1. 获取cst时间(北京时间)两布:1.抓取url timtstamp >>format 到cst 1

2. 设置本机时间  setSystime(date);:调用的命令行,仅仅能支持windows和linux系统 2

3. 留意:  1582年10月5日—1582年10月14日。是不存在的.. 2

4. 克拉维斯委员会面临两个不同的问题, 太阳年不一致and闰年 3

5. 不同的国家不相同的的历法 3

6. 1582年10月15日之前发生的事件日期不能够将之按现行历法逆推 4

7. 对于确定天数间隔须要删除这10天。。。

4

8. java中对这失去的10天的运算是依照教皇命令的 4

9. 可是java1.6的timestamp是错误的,bug 4

10. —-code 5

11. 參考: 5

 

1. 获取cst时间(北京时间)两布:1.抓取url timtstamp >>format 到cst 

首先。java.util.Date代表一个时间点UTC时间,其值为距公元1970年1月1日 00:00:00的毫秒数。所以它是没有时区和Locale概念的

 

默认情况下,SimpleDateFormat 取得本地系统的时区 然后依照pattern(”yyyy-MM-dd HH:mm:ss”)格式化now, 。假设想支持CST时间,则先指定时区,然后再格式化date数据。比如:

 

SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

sdf.setTimeZone(TimeZone.getTimeZone(“GMT+8”));
String snow = sdf.format(now);  // 2009-11-19 14:12:23

另外,你能够通过例如以下代码改动本地时区信息:

TimeZone.setDefault(TimeZone.getTimeZone(“GMT+8”));

Calendar 的计算也是基于时区的。比如:同一个date在不同一时候区下的小时数是不一样的。可是calendar.getTime();返回的date是没有时区的。由于它是Date类型的。

 

 

     URL url=new URL(“http://www.bjtime.cn”);//取得资源对象  

        URLConnection uc=url.openConnection();//生成连接对象  

        uc.connect(); //发出连接  

        long ld=uc.getDate(); //取得站点日期时间(时间戳)  

        Date date=new Date(ld); //转换为标准时间对象  

     TimeZone.setDefault(TimeZone.getTimeZone(“GMT+8”));

        System.out.println(DateUtil.toStandFmtYYYYmmDD_hhmmss_byDate(date));

 

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

2. 设置本机时间  setSystime(date);:调用的命令行。仅仅能支持windows和linux系统

 

3. 留意:  1582年10月5日—1582年10月14日。

是不存在的..

 

春分在朱利安历法上的日期越来越提前了,这对农时不方便,对教会确定复活节在哪一天更是带来麻烦。 

 

。由于到16世纪,每年11分14秒已经累积成10天,也就是历法上多了10天。这对于确定复活节造成严重困 难,不得不採取措施补救。

 16世纪时,教皇格利戈里八世进行了一次校正

 

为此。格利戈里採取了解决此类难题的最古老最有效的策略—-他召集一个委员会,任命一位聪明的主席,即杰出的耶稣会数学家克 利斯多弗·克拉维斯(Christopher Clavius)。要求委员会提出解决方式。

委员会于1587年開始工作。

。克拉维斯建议用官方声明把这 10天抹掉。教皇格利戈八世于1582年2月24日以教皇训令颁布,将1582年10月5日至14抹掉,于是这10天就消失了。一去不复返。

1582年 10月4日过完了,第二天已经是10月15日了

4.  克拉维斯委员会面临两个不同的问题, 太阳年不一致and闰年

第一,朱利安历法如今走快了10天。必须拉回到与太阳年一致。克拉维斯建议用官方声明把这 10天抹掉!教皇格利戈八世于1582年2月24日以教皇训令颁布。将1582年10月5日至14抹掉,于是这10天就消失了,一去不复返。1582年 10月4日过完了,第二天已经是10月15日了。于是历法又回到与太阳年同步。

 

 

第二个问题是须要提出历法的补充规则,不让每年多出的11分14秒累积得太多。

于是克拉维斯委员会提出一年有365.2422天的方案。这比朱利安历法的365.25天大大接近天体运动实际。据此对朱利安历法仅仅有“四年一闰”的简单规定进行校正:四年一闰,可是世纪之交的’00年,如100年,200年,不闰,即每一百年少闰一次。这样一算,闰年又太少了,于是进一步规定:每四个世纪的世纪之交。即400年,800年等仍是闰

 

5. 不同的国家不相同的的历法

 

格利戈里历法非常快在罗马天主教势力范围被普遍接受,可是在英国却引起了一片喧嚣的反对声,英国人仍然坚持朱利安历法,拒绝“抹掉10天”。直到1752 年。英国人才想通,理性最终占了上风,只是从1582年到那时,历法又多出了1天,所以英国议会在1752年作出决定。抹掉11天—-1752年9月 3日至13日,至此才接受了格利戈里的改革

 

可是格里高利13世的新历法颁布以后,仅仅有当时的天主教国家意大利、波兰、西班牙、葡萄牙開始用新历,1582年10月4日之后跳过10日。因为新历法是教皇颁布的,新教国家予以抵制。

直到儒略历1752年9月2日,大英帝国,包含英格兰、苏格兰、以及如今美国的一部份才採纳格里历,于是那天之后就直接从9月2日跳到9月14日,日期跳过11日。

瑞典在1699年计划从儒略历改成公历,预定的办法是取消自1700年至1740年间全部的闰年。即在此期间2月都仅仅有28天,相当于瑞典人打算用四十年的时间来完毕别人用两天就可达到的效果。

 

最后採用公历的东欧国家是希腊。1923年。

但全是民间採用——国家教堂都没有接受。

 

6. 1582年10月15日之前发生的事件日期不能够将之按现行历法逆推

在普通文档中,1582年10月15日之前发生的事件日期仍以当时採用的儒略历日期表示,而不是将之按现行历法逆推。

 

 

7. 对于确定天数间隔须要删除这10天。。

。

 

8. java中对这失去的10天的运算是依照教皇命令的

 String d1=“1582-10-03”;

    String d2=“1582-10-15”;

    int span=DateUtil.getDayInterval(DateUtil.str2date(d1, false),DateUtil.str2date(d2, false));

    System.out.println(span);

输出结果是2天。

 

9. 可是java1.6的timestamp是错误的,bug

String d1=“1582-10-09”; //-12219094800000 ,-12219008400000   -12218922000000

    //10-07>>>10-09  

10. —-code

 

11. 參考:

【Java】从网络获取北京时间 – 好想睡觉…… – 博客频道 – CSDN.NET.htm

[转载]1582年10月4日之后的第二天,不是10月5日哦_宾克斯的美酒_新浪博客.htm

关于java Date和时区的问题 – 沙漠海的专栏 – 博客频道 – CSDN.NET.htm

atitit.GMT UTC Catitit.GMT UTC CST DST CET 星期 月份 节日 时间的不同本质and起源 – attilax的专栏 – 博客频道 – CSDN.NET.htm

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116320.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于mysql的时区(下):如何设置mysql的时区

    关于mysql的时区(下):如何设置mysql的时区一、如何设置mysql时区1、命令1)查时区:showvariableslike’%time_zone%’返回有2行记录,要看time_zone变量的值,不需要看system_time_zone。若值为SYSTEM表示取值跟system_time_zone保持一致。system_time_zone的值是启动mysql服务的时候读取了操作系统的值,除非重新启动mysql服务重读否则这个值不变2)设置会话时区:settime_zone=’+8:00’仅对当前会话有效,在当前窗口立即生效

    2022年10月31日
  • linux下批量替换文件内容

    linux下批量替换文件内容1、网络上现成的资料  格式:sed-i"s/查找字段/替换字段/g"`grep查找字段-rl路径`  linuxsed批量替换多个文件中的字符串  sed-

    2022年7月26日
  • JDBC中DatabaseMetaData用法

    JDBC中DatabaseMetaData用法DatabaseMetaData类中提供了许多方法用于获得数据源的各种信息,通过这些方法可以非常详细的了解数据库的信息。就如我们上面例子中所显示的几个信息[其他的方法请读者参考JDKAPI中的DatabaseMetaData类]:getURL()返回一个String类对象,代表数据库的URL。getUserName()返回连接当前数据库管理系统的用户名。isReadOnly(…

    2022年6月19日
  • android中UI设计心得

    android中UI设计心得UI布局的设计,布局方式有相对布局(RelativeLayout)线性布局(LinearLayout),表格布局(TableLayout),网格布局(GridLayout),帧布局(FrameLayout),绝对布局(AbsoluteLayout);下面这个界面的布局格式,是通过相对布局实现的,每一行是一个整体,整体里面也是也是通过相对布局实现的;编写项目时,我们需要在res中创建文件夹一定要

    2022年6月26日
  • sshd服务设定root登陆配置项PermitRootLogin的解析「建议收藏」

    sshd服务设定root登陆配置项PermitRootLogin的解析「建议收藏」首先看一下sshd_config中关于PermitRootLogin的配置信息:#grepPermitRootLogin/etc/ssh/sshd_configPermitRootLoginyes#thesettingof”PermitRootLoginwithout-password”.那么PermitRootLoginwithout-password又是什么意义呢?PermitRootLogin配置项都有哪些配置参数?常见:yes,no比较陌生:withou

    2022年6月11日
  • 光耦的參数的理解

    光耦的參数的理解

    2021年8月30日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号