• 关于时间差值的问题


    string value = "Wed Jan 06 17:08:03 +0000 2010";
    中的+0000估计是时区信息

    UTC: Universal Time Coordinated 协调世界时,又称世界标准时间
    GMT: Greenwich Mean Time 格林尼治平均时
    UTC和GMT都与英国伦敦的本地时相同。

    时区:全球24个时区,把以伦敦为中心的世界地图展开,UTC和GMT的伦敦是0区,伦敦的右边直到新西兰的东部不远的斐济为东区,而左边到太平洋中间为 西区。一般用5位时区差来表示与UTC相差的小时数,东区为正,西区为负。如北京时区是东八区,领先UTC八个小时,记为 +0800;纽约的时区是西五区,比UTC落后五个小时,记为 -0500。
    UTC + 时区差 = 本地时间

    所以:UTC = 北京时间 - 0800 ,即 北京时间= UTC+0800,

    所以时区时间差为:此处就是(+0000/100+8) 小时,即8小时转换程序如下:
    C# codestring value="Wed Jan 06 17:08:03 +0000 2010";//分割出年、月、日、分、秒、时、星期string[] date=value.Split(newchar[] {'',':'},StringSplitOptions.RemoveEmptyEntries);//生成本地日期字符串格式,GMT代表根据本地时 区日期计算string datestr=string.Format("{0}, {1} {2} {3} {4}:{5}:{6} GMT", date[0], date[2], date[1], date[7], date[3], date[4], date[5]);
    DateTime dtt= Convert.ToDateTime(datestr);//转换成本地日期//实际日期就出来了,是 星期四, 2010-01-07 01:08:03

    下面计算当前用户所在时区时间,与该时间相差的数值:
    C# code//接上面DateTime now= DateTime.Now;
    TimeSpan ts= (TimeSpan)now.Subtract(dtt);int xday= ts.Days;//获取相差天数int xhour= ts.Hours;//相差小时int xmin= ts.Minutes;//相差分钟int xsec= ts.Seconds;//相差秒数//相差时间结果string xTime=string.Format("时间相差{0}天{1}小时{2}分{3}秒",xday,xhour,xmin,xsec);

  • 相关阅读:
    用ildasm和ilasm对.net下的exe程序进行破解初探
    随笔--各种概念等等
    C#高级编程学习一-----------------第五章泛型
    visual studio相关操作
    webservice开发
    delphi各种错
    android开发文章收藏
    android开发遇到的问题
    android应用开发基础知道
    数据库各种问题
  • 原文地址:https://www.cnblogs.com/weiying/p/weiying12_31.html
Copyright © 2020-2023  润新知