DateTime转换为FileTimeUtc

Jim*_*y D 0 c# datetime

我有一个DateTime变量定义为DateTime.Now.我需要将其"转换"为FileTimeUtc.我必须完全误解这个,因为我认为这会有效:

DateTime RunTime;
RunTime = System.DateTime.Now.ToFileTimeUtc();
Run Code Online (Sandbox Code Playgroud)

但我得到的错误不能隐式转换类型long到system.datetime.

有帮助吗?谢谢.

Ree*_*sey 5

DateTime.ToFileTimeUtc返回一个long,而不是a DateTime.从文档:

Windows文件时间是64位值,表示自公元1601年1月1日午夜12点(世卫时间)协调世界时(UTC)以来经过的100纳秒间隔的数量.Windows使用文件时间来记录应用程序创建,访问或写入文件的时间.

这应该是:

long runTime;
runTime = System.DateTime.Now.ToFileTimeUtc();
Run Code Online (Sandbox Code Playgroud)

如果您只想要当前的协调世界时,而不是Windows文件时,可以使用:

DateTime runTime = System.DateTime.UtcNow;
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅UtcNow.