现在的位置: 首页 > 综合 > 正文

timestamp php 和c#中的转换

2013年10月13日 ⁄ 综合 ⁄ 共 732字 ⁄ 字号 评论关闭
using System;   
  
namespace zeal.util   
{   
    
public class unixTimestamp   
    {   
        
protected static readonly DateTime unixTPStart =   
            TimeZone.CurrentTimeZone.ToLocalTime(
new DateTime(197011));   
        
public static long toUTP(DateTime dt)   
        {   
            TimeSpan toNow 
= dt.Subtract(unixTPStart);   
            
return (long)Math.Round(toNow.TotalSeconds);   
        }   
        
public static DateTime fromUTP(long tp)   
        {   
            
return unixTPStart.Add(new TimeSpan(tp * 10000000));   
        }   
    }   
}   

 

C# 中的 DateTime 值类型表示值范围在公元(基督纪元)0001 年 1 月 1 日午夜 12:00:00 到公元 (C.E.) 9999 年 12 月 31 日晚上 11:59:59 之间的日期和时间;而 Unix 的时间戳则表示的是自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。 C# 中似乎并没有内置的方法来完成两者之间的转换。 

抱歉!评论已关闭.