我正在尝试将当前时间(系统时间)转换为毫秒...是否有任何内置函数可以用来轻松解决这个问题。
例如,我使用以下代码来获取时间并显示它。
System.Diagnostics.Debug.WriteLine("Time "+ String.Format("{0:mm:ss.fff}",DateTime.Now));
我得到的输出是
时间 36:50.527
以分钟为单位:秒.毫秒
我需要将我现在得到的时间转换为毫秒。
我正在尝试将当前时间(系统时间)转换为毫秒...是否有任何内置函数可以用来轻松解决这个问题。
例如,我使用以下代码来获取时间并显示它。
System.Diagnostics.Debug.WriteLine("Time "+ String.Format("{0:mm:ss.fff}",DateTime.Now));
我得到的输出是
时间 36:50.527
以分钟为单位:秒.毫秒
我需要将我现在得到的时间转换为毫秒。
你需要一个TimeSpan
代表你的时代以来的时间。在我们的例子中,这是第 0 天。要得到这个,只需从 中减去第 0 天 ( DateTime.Min
) DateTime.Now
。
var ms = (DateTime.Now - DateTime.MinValue).TotalMilliseconds;
System.Diagnostics.Debug.WriteLine("Milliseconds since the alleged birth of christ: " + ms);
You didn't specify, but usually when you need the time in milliseconds, it's because you're passing it off to a system that uses Jan 1st 1970 UTC as its epoch. JavaScript, Java, PHP, Python and others use this particular epoch.
In C#, you can get it like this:
DateTime epoch = new DateTime(1970,1,1,0,0,0,DateTimeKind.Utc);
long ms = (long) (DateTime.UtcNow - epoch).TotalMilliseconds;