UTC时间

By admin in 天文台 on 2018年10月11日

全方位地球分为二十四时区,每个时区都发生好的地面时间。在列国无线电通信场合,为了统一起见,使用一个联的年月,称为通用协调时(UTC,
Universal Time Coordinated)。UTC和格林尼治平均时(GMT, Greenwich Mean
Time)一样,都和英国伦敦的地方时同样。在本文中,UTC与GMT含义完全相同。

都时区是东八区,领先UTC八单钟头,在电子邮件信头的Date域记为+0800。如果以电子邮件的信头中生出诸如此类一行:

Date: Fri, 08 Nov 2002 09:42:22 +0800

证实信件的发送地的地方时间是二○○二年十一月八如泣如诉,星期五,早上九点四十二分(二十二秒),这个地方的地方时领先UTC八只钟头(+0800,
就是东八区时)。电子邮件信头的Date域使用二十四小时之钟表,而非利用AM和PM来号上下午。

为之电子邮件的发送时间啊例,如果要拿这个时刻转发为UTC,可以运用一下公式:

UTC + 时区差 = 本地时间

时区差东也刚,西为倚。在这个,把东八区时区差记为 +0800,

UTC + (+0800) = 本地(北京)时间 (1)

那么,UTC = 本地时间(北京时间))- 0800 (2)

0942 – 0800 = 0142

就算UTC是当天黎明一点四十二分开二十二秒。如果结果是负数就表示是UTC前一天,把这负数加上2400哪怕是UTC在前天的时间。例如,本地
(北京)时间是 0432 (凌晨四点三十二分),那么,UTC就是 0432 – 0800 =
-0368,负号意味着是前天, -0368 + 2400 =
2032,既前一天之夜八点三十二区划。

纽约的时区是西五区,比UTC落后五只钟头,记否 -0500:

UTC + (-0500) = 纽约流年 (3)

UTC = 纽约岁月 + 0500 (4)

将(2)式 - (4)式相比较,

UTC = 北京时间 - 0800 = 纽约时空 + 0500 (5)

即 北京时间 = 纽约时刻 + 1300 (6)

纵然北京时间领先纽约流年十三个钟头,由(6)式,

纽约日 = 北京时间 - 1300 (7)

于四月下旬,纽约还要换用夏令时,又称为日光节约时,比标准纽约时刻提前一个小时,实际成为西四区的科班日,成为
-0400。

UTC + (-0400) = 纽约夏令时,套用以上公式,

北京时间 = 纽约夏令时 + 1200

纽约夏令时 = 北京时间 - 1200

在这些易中,最要紧之公式就是

UTC + 时区差 = 本地时间

时区差东为刚刚,西为乘。例如,东八区(北京)是
+0800,西五区(纽约)是-0500,加州凡西八区,是-0800,美国中段时区是西六区,-0600,美国山地时区是西七区,-0700,太平洋常
区是西八区,-0800,在夏利用夏时制,成为-0700。德国时区是东一区,+0100,夏天变成+0200。

大部分电子邮件程序,例如Outlook
Express,在亮时间时不时,计算机程序把时光先换成为地方时间另行显,例如,邮件的Date域为:

Date: Fri, 08 Nov 2002 09:42:22 +0800

Outlook Express在显示时就显得为:

Date: Thur, 07 Nov 2002 08:42:22
pm,把北京时间转换成为了纽约流年,而且将二十四小时格式的辰更换成为了十二钟头之格式。当然,为了时刻换正确,发送方和接受者的计算机的时区都使
设置科学,在此地,发送方的时区要科学地设为北京时区东八区,而自之时区要设为西五区。

为了便利起见,我在这里放上纽约,加洲跟京城实时显示的钟表,以看去计算的辛苦。

 

举世正式时间 (UTC)

五洲标准时间凭借的凡由于世界时标准设定的辰。原先为于叫作格林威治标准时间或
GMT。

咱清楚,本初子午线被定义从伦敦郊区的皇家格林尼治天文台穿过,那里的工夫给定义也世之专业日。

神州放在东八区,所以一旦比这时早八只钟头,也就是说,全球正式时间是5日0触及时,中国大凡5日之8沾,而美国有些域还地处4日的黄昏。

有点对象、函数中,需要运用 UTC 时间,我们尽管需要以中华的时间更换成 UTC
时间,使用 toUTCString

var d = new Date();
document.write(“当前的 UTC 时间是:” + d.toUTCString());

toGMTString 与 toUTCString 功能、用法都一致,但咱引进下
toUTCString,毕竟 GMT 是以前的号称。

 

c#

 

DateTime 值

DateTime 类型的年华价值描述通常以协调世界时 (UTC)
标准来发挥,它是格林尼治标准日 (GMT)
的国际识别名。协调世界时是当经度零度(即 UTC
原点)测量到的时。夏时制不适用于 UTC。

本 地日是对立于特定时区而言。时区与时区偏移量关联,它是时区从 UTC
原点算打底因时吗单位的偏移量。此外,本地时间发出或给夏时制影响,夏时制会对日长增加或减一时。因此,本地时间之乘除是以时区偏移量加上
UTC,如产生必不可少,再依据夏时制进行调。UTC 原点的时区偏移量为零星。

UTC
时间可为计算、比较日期及时间,以及用日期以及岁月存储在文件被。本地时间可为在桌面应用程序的用户界面被形。识别时区的应用程序(如过江之鲫
Web 应用程序)还亟需采取过多任何时区。

如果 DateTime 对象的
Kind
属性为
DateTimeKind..::.Unspecified,则该无指定表示的流年是地方时间、UTC
时间要有其他时区中之岁月。

DateTime 运算

使 DateTime 结构的计(如
Add

Subtract)不会见改该组织的价。相反,计算会回到新的
DateTime 结构,其值为计结果。

说明:

DateTime 对象的计算和比较仅当这些对象表示同一时区中的时间时才有意义。

时区之间(例如,UTC
和地方时间中,或者一个时区中之日子以及地面时间里)的转移运算会考虑当地时区的夏时制,但是算术和比运算不考虑。

DateTime 结构本身不绝支持由一个时区转换到其他一个时区。您得用
ToLocalTime
方法以 UTC 转换为当地时间,也得使
ToUniversalTime
方法从地面时间转移为 UTC。但是,整套的时区转换方法是在
TimeZoneInfo
类中提供的。使用这些艺术,可以将世界上任一时区中的日子更换为 UTC
或者地方时间。

每个 DateTime
成员还隐式使用公历执行其操作,例外是指定日历的构造函数以及用从
IFormatProvider
派生的参数(如
System.Globalization..::.DateTimeFormatInfo)的计,该参数隐式指定日历。

DateTime 类型中之成员所实行的运算会考虑闰年和月中天数等细节。

DateTime 与 TimeSpan

DateTime 值类型及
TimeSpan
值类型的异样在 DateTime 表示时间及的一刻,而
TimeSpan
表示时间距离。例如,这代表将 DateTime
的一个实例与其他一个实例相减可以取表示这半单实例之间的时光间隔的
TimeSpan
对象。或者,将一个正
TimeSpan
与时 DateTime 相加可以落表示前日子的 DateTime 值。

好为 DateTime
对象多或回落一个光阴间隔。时间间隔可为倚,也不过为刚,可以就此刻度或秒等呢单位表示,也只是代表也
TimeSpan
对象。

落实之接口

此类型实现
IComparable、IComparable<(Of
<(T>)>)、IEquatable<(Of
<(T>)>)、IFormattable

IConvertible
接口。使用
Convert
类进行转移,而不是动此类型的
IConvertible
显式接口成员贯彻。

天文台 1 示例

脚的代码示例演示如何大致比较相同的 DateTime
值,将它们声明也“相等”时接受很粗之别。

C#天文台 2 😉

 1天文台 3using System;
 2天文台 4
 3天文台 5class Example
 4天文台 6天文台 7天文台 8{
 5天文台 9
 6天文台 10   static bool RoughlyEquals(DateTime time, DateTime timeWithWindow, int windowInSeconds, int frequencyInSeconds)
 7天文台 11天文台 12   天文台 13{
 8天文台 14
 9天文台 15      long delta = (long)((TimeSpan)(timeWithWindow – time)).TotalSeconds % frequencyInSeconds;
10天文台 16
11天文台 17      delta = delta > windowInSeconds ? frequencyInSeconds – delta : delta;
12天文台 18
13天文台 19      return Math.Abs(delta) < windowInSeconds;
14天文台 20
15天文台 21   }
16天文台 22
17天文台 23   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
18天文台 24天文台 25   天文台 26{
19天文台 27      int window = 10;
20天文台 28      int freq = 60 * 60 * 2; // 2 hours;
21天文台 29
22天文台 30      DateTime d1 = DateTime.Now;
23天文台 31
24天文台 32      DateTime d2 = d1.AddSeconds(2 * window);
25天文台 33      DateTime d3 = d1.AddSeconds(-2 * window);
26天文台 34      DateTime d4 = d1.AddSeconds(window / 2);
27天文台 35      DateTime d5 = d1.AddSeconds(-window / 2);
28天文台 36
29天文台 37      DateTime d6 = (d1.AddHours(2)).AddSeconds(2 * window);
30天文台 38      DateTime d7 = (d1.AddHours(2)).AddSeconds(-2 * window);
31天文台 39      DateTime d8 = (d1.AddHours(2)).AddSeconds(window / 2);
32天文台 40      DateTime d9 = (d1.AddHours(2)).AddSeconds(-window / 2);
33天文台 41
34天文台 42      outputBlock.Text += String.Format(“d1 ~= d1 [true]: ” + RoughlyEquals(d1, d1, window, freq)) + “\n”;
35天文台 43      outputBlock.Text += String.Format(“d1 ~= d2 [false]: ” + RoughlyEquals(d1, d2, window, freq)) + “\n”;
36天文台 44      outputBlock.Text += String.Format(“d1 ~= d3 [false]: ” + RoughlyEquals(d1, d3, window, freq)) + “\n”;
37天文台 45      outputBlock.Text += String.Format(“d1 ~= d4 [true]: ” + RoughlyEquals(d1, d4, window, freq)) + “\n”;
38天文台 46      outputBlock.Text += String.Format(“d1 ~= d5 [true]: ” + RoughlyEquals(d1, d5, window, freq)) + “\n”;
39天文台 47
40天文台 48      outputBlock.Text += String.Format(“d1 ~= d6 [false]: ” + RoughlyEquals(d1, d6, window, freq)) + “\n”;
41天文台 49      outputBlock.Text += String.Format(“d1 ~= d7 [false]: ” + RoughlyEquals(d1, d7, window, freq)) + “\n”;
42天文台 50      outputBlock.Text += String.Format(“d1 ~= d8 [true]: ” + RoughlyEquals(d1, d8, window, freq)) + “\n”;
43天文台 51      outputBlock.Text += String.Format(“d1 ~= d9 [true]: ” + RoughlyEquals(d1, d9, window, freq)) + “\n”;
44天文台 52
45天文台 53
46天文台 54   }
47天文台 55}
48天文台 56

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2018 亚洲必赢手机官网 版权所有