我有一个定义为DateTime.Now的DateTime变量。我需要将其“转换”为FileTimeUtc。我肯定完全误解了这一点,因为我以为这会起作用:
DateTime RunTime;
RunTime = System.DateTime.Now.ToFileTimeUtc();但我得到的错误是不能隐式地将类型long转换为system.datetime。
有什么帮助吗?谢谢。
发布于 2012-06-05 00:18:37
DateTime.ToFileTimeUtc返回一个长整型,而不是一个DateTime。从文档中:
窗口文件时间是一个64位的值,表示自公元1601年1月1日午夜12:00以来所经过的100纳秒间隔数。(C.E.)协调世界时(UTC)。Windows使用文件时间来记录应用程序创建、访问或写入文件的时间。
这应该是:
long runTime;
runTime = System.DateTime.Now.ToFileTimeUtc();如果您只需要当前的协调世界时,而不是Windows文件时间,则可以使用:
DateTime runTime = System.DateTime.UtcNow;详情请参见UtcNow。
发布于 2012-06-05 00:22:26
ToFileTimeUtc()返回一个长整型,表示自公元1601年1月1日午夜12:00以来所经过的100纳秒间隔数。(C.E.)协调世界时(UTC)。
http://msdn.microsoft.com/en-us/library/system.datetime.tofiletimeutc.aspx
.net框架不支持从long到datetime的隐式转换。
如果希望日期为UTC,请使用ToUniversalTime(),或者现在要获取UTC,请使用UtcNow
http://msdn.microsoft.com/en-us/library/system.datetime.touniversaltime%28v=vs.100%29.aspx
https://stackoverflow.com/questions/10884549
复制相似问题