在 VB.NET 中将 AD 日期字符串值转换为日期时间



我需要将从Active Directory检索到的Date VALUE转换为可读的内容。

我知道可以使用外部窗口System32应用程序:

CMD - > w32tm.exe /ntte 128271382742968750

148462 05:57:54.2968750 - 6/24/2007 6:57:54 AM

我试过了:

Dim returnString as String = "128271382742968750"
Dim dta As DateTime = TimeValue(returnString)

这将引发异常。

欢迎任何建议!

Active Directory 将这些值存储为 Windows 文件时间,您可以使用DateTime.FromFileTime()进行转换:

Dim returnString as String = "128271382742968750"
Dim dta As DateTime = DateTime.FromFileTime(Long.Parse(returnString))

结果:

2007/6/24 5:57:54

在这里看到它:

https://dotnetfiddle.net/wH2Re0

最新更新