本文介绍了日期时间到时间跨度的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,
我可以使用以下代码将时间戳成功转换为日期时间:
到DateTime的时间戳:
Hello,
I am able to successfully convert timestamp to datetime using below code:
Timestamp to DateTime:
double dTimeSpan = Convert.ToDouble("1404757800000");
DateTime dtReturn = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds(Math.Round(dTimeSpan / 1000d)).ToLocalTime();
结果:
Result:
7/8/2014 12:00:00 AM
但是我无法将此日期时间转换为正确的时间戳。使用下面的代码,因为它给了我错误的时间戳。
时间戳的日期时间:
But i am not able to convert this datetime to correct timestamp. Using below code because it give me wrong timestamp.
Datetime to Timestamp:
DateTime dtEPoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
DateTime dtTime = dtReturn.Subtract(new TimeSpan(dtEPoch.Ticks));
long lngTimeSpan = dtTime.Ticks / 10000;
string strTimeSpan = lngTimeSpan.ToString();
结果:
Result:
1404777600000
请建议我。
Please suggest me.
推荐答案
date=new Datetime(2014,8,7);
long Timestamp = date.Ticks - new DateTime(1970, 1, 1).Ticks;
Timestamp /= TimeSpan.TicksPerSecond;
return Timestamp;
DateTime dtEPoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
TimeSpan timeSpan = dtReturn - dtEPoch;
string strTimeSpan = timeSpan.ToString();
double dTimeSpan = Convert.ToDouble("1404757800000");
DateTime dtReturn = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local).AddSeconds(Math.Round(dTimeSpan / 1000d)).ToLocalTime();
DateTime dtEPoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local);
DateTime dtTime = dtReturn.Subtract(new TimeSpan(dtEPoch.Ticks));
long lngTimeSpan = dtTime.Ticks / 10000;
string strTimeSpan = lngTimeSpan.ToString();
获取更多详细信息 []
这篇关于日期时间到时间跨度的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!