在项目开发过程当中,有时会遇到不一样程序之间相互调用数据,数据中难免会包含时间,好比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);
结束!