C#テクニック(1)C#変換タイムスタンプ


多くの場所でタイムスタンプを使って時間を表すことがよくあります.例えば、1370838759は2013年6月10日12:32:39を表す.この時間フォーマットを簡単に変換するためのツールが必要です
 
タイムスタンプとは?
タイムスタンプはUnix Stampとも呼ばれます.1970年1月1日(UTC/GMTの真夜中)から経過した秒数は、閏秒を考慮しない.
 
C#タイムスタンプを通常時間に変換
        //      C#    
        private DateTime StampToDateTime(string timeStamp)
        {
            DateTime dateTimeStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
            long lTime = long.Parse(timeStamp + "0000000");
            TimeSpan toNow = new TimeSpan(lTime); 
            
            return dateTimeStart.Add(toNow);
        }

        // DateTime       Unix     
        private int DateTimeToStamp(System.DateTime time)
        {
            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
            return (int)(time - startTime).TotalSeconds;
        }

 
 
ソースのダウンロード
【ここをクリックしてソースコードをダウンロード】VS 2010で開いてください