C#中系統時間和UNIX時間戳互相轉換

 

在項目開發過程當中,有時會遇到不一樣程序之間相互調用數據,數據中難免會包含時間,好比ASP.NET調用PHP,牽扯到時間就要作一下處理,PHP程序中通常存取的都是UNIX時間,不像ASP.NET存儲的是年月日時分秒,這樣就須要作一下轉換,代碼以下:函數

1、將系統時間轉換成UNIX時間戳(精確到秒)編碼

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

 

2、將UNIX時間戳轉換成系統時間(精確到秒)spa

 

1 string timeStamp = "1288368000";
2 DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970,1,1));
3 long lTime = long.Parse(timeStamp + "0000000");
4 TimeSpan toNow = new TimeSpan(lTime);
5 DateTime dtResult = dtStart.Add(toNow);

 

這兩個方法比較簡單,你們能夠把他們封裝成靜態函數,直接調用。code

 

補充:blog

獲取時間戳(秒)開發

 

1 (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000

 

 

獲取時間戳(毫秒)字符串

 

1 (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000

 

C#中字符竄 base64編碼 與解碼:string

編碼:base64

1  byte[] bytes=Encoding.Default.GetBytes("要轉換的字符串");
2  byte[] b=Encoding.UTF8.GetBytes("要轉換的字符串");  //轉換爲UFT8編碼
3 
4  Convert.ToBase64String(bytes);

 

解碼:class

1 byte[] outputb = Convert.FromBase64String("ztKwrsTj");
2 string orgStr= Encoding.Default.GetString(outputb);

 

 

結束!

相關文章
相關標籤/搜索