专注于网站技术与网络营销的博客
« Ubuntu 7.04即将发布百度图书搜索正式上线 »

使用C#对Unix的timestamp进行转换

    在众多的PHP+MySQL的应用之中,存储在MySQL中的时间都是一串数字,后经查这个格式的日期叫做:Unix Timestamp;Unix的timestamp是一组数字,表示从1970年1月1日以来的秒数。今天在进行C#应用开发时需要对MySQL中的数据进行操作,写出以下方法供大家参考。

主要应用到的类库有:
System.TimeZone
应用的方法:
返回对应于指定协调通用时间 (UTC) 的本地时间。
public virtual DateTime ToLocalTime(
   DateTime time
);


1、将系统时间转换成UNIX时间戳

            DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970,1,1));
            DateTime dtNow = DateTime.Parse(DateTime.Now.ToString());
            TimeSpan toNow = dtNow.Subtract(dtStart);
            string timeStamp = toNow.Ticks.ToString();
            timeStamp = timeStamp.Substring(0,timeStamp.Length - 7);

   
2、将UNIX时间戳转换成系统时
            string timeStamp = "1176686120";
            DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970,1,1));
            long lTime = long.Parse(timeStamp + "0000000");
            TimeSpan toNow = new TimeSpan(lTime);
            DateTime dtResult = dtStart.Add(toNow);

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-Blog 1.8 Devo Build 80201

Copyright 2005 - 2008, 完美生活(专注于网站技术与网络营销的博客). Some Rights Reserved.