在C#中获取如PHP函数time()一样的时间戳
2014-03-25 15:00
183 查看
c#中没有象PHP一样的time()时间戳函数,但有DateTime.Now.Ticks用来计算时间差。
此属性的值为自 0001 年 1 月 1 日午夜 12:00 以来所经过时间以 100 毫微秒为间隔表示时的数字。
dotnet下用DateTime.Now.Ticks能够得到精确的时间,单位是10^-7s。
经过实验,发现
long a=(DateTime.Now.Ticks-aa.Ticks)/10000000-8*60*60;
tbxUrl.Text=a.ToString();
要减去8*60*60才和time()函数得到的值一样。
什么问题?刚好是8个时区产生的差别。
DateTime aa=new DateTime(1970,1,1);
MessageBox.Show("1970 "+aa.Ticks.ToString()+"now"+DateTime.Now.Ticks.ToString());
long a=(DateTime.Now.Ticks-aa.Ticks)/10000000-8*60*60;
tbxUrl.Text=a.ToString();
同时发现c#里面DataTime有一个属性!DateTime.UtcNow已经考虑了时区问题。
ok~ 使用下面的代码即可
DateTime timeStamp=new DateTime(1970,1,1); //得到1970年的时间戳
long a=(DateTime.UtcNow.Ticks-timeStamp.Ticks)/10000000; //注意这里有时区问题,用now就要减掉8个小时
此属性的值为自 0001 年 1 月 1 日午夜 12:00 以来所经过时间以 100 毫微秒为间隔表示时的数字。
dotnet下用DateTime.Now.Ticks能够得到精确的时间,单位是10^-7s。
经过实验,发现
long a=(DateTime.Now.Ticks-aa.Ticks)/10000000-8*60*60;
tbxUrl.Text=a.ToString();
要减去8*60*60才和time()函数得到的值一样。
什么问题?刚好是8个时区产生的差别。
DateTime aa=new DateTime(1970,1,1);
MessageBox.Show("1970 "+aa.Ticks.ToString()+"now"+DateTime.Now.Ticks.ToString());
long a=(DateTime.Now.Ticks-aa.Ticks)/10000000-8*60*60;
tbxUrl.Text=a.ToString();
同时发现c#里面DataTime有一个属性!DateTime.UtcNow已经考虑了时区问题。
ok~ 使用下面的代码即可
DateTime timeStamp=new DateTime(1970,1,1); //得到1970年的时间戳
long a=(DateTime.UtcNow.Ticks-timeStamp.Ticks)/10000000; //注意这里有时区问题,用now就要减掉8个小时
相关文章推荐
- 在C#中获取如PHP函数time()一样的时间戳[原创]
- 在C#中获取如PHP函数time()一样的时间戳
- 在C#中获取如PHP函数time()一样的时间戳
- 在C#中获取如PHP函数time()一样的时间戳
- 在C#中获取如PHP函数time()一样的时间戳
- c#获取当前日期时间
- c#获取当前日期时间
- [Unity&C#]获取某个方法执行的时间
- c# 获取时间戳
- C# 获取utc时间,以及utc datetime 互相转化
- C#获取时间差
- C# 精准获取代码运行时间
- C#获取当前时间的各种返回格式(常用的)
- C# 获取系统时间及时间格式
- ASP.NET C# 获取当前日期 时间 年 月 日 时 分 秒
- C# 获取系统时间及时间格式
- 在C#中服务端如何获取客户端的IP地址、端口号以及客户端和服务器连接的时间
- C#获取代码执行时间(精确到毫秒)
- 【转载】C#根据当前时间获取周,月,季度,年度等时间段的起止时间
- (转)C#获取Internet服务器的时间