将20130420151740.00000000+120转换为DateTime
本文关键字:DateTime 转换 00000000+120 20130420151740 | 更新日期: 2024-10-21 17:23:04
PowerShell Get-WMIObject以字符串形式返回DateTime字段,如下所示:20130420151740.000000+120
在PowerShell中键入以下命令:
Get-WMIObject -Class Win32_OperatingSystem | select -Property InstallDate | Get-Member
你会得到这样的结果:
TypeName: Selected.System.Management.ManagementObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
InstallDate NoteProperty string InstallDate=20160331115110.000000+120
在C#程序中,我需要转换这类字符串。这是什么格式的??这看起来像是Double
加上UTC偏移量(以分钟为单位)。通常显示为2013-04-20 15:17:40 +2:00
。
如何将C#中的它转换为C#类型的DateTime
?之类的东西
string stringdate = "20160331115110.000000+120";
var date = Convert.ToDateTime(stringdate);
或
string stringdate = "20160331115110.000000+120";
var date = DateTime.Parse(stringdate);
不要工作。他们抛出一个System.FormatException exception
说:
Message=字符串未被识别为有效的DateTime。
有ManagementDateTimeConverter。ToDateTime正是此格式的。你可以这样称呼它:
using System.Management;
[...]
string stringdate = "20160331115110.000000+120";
DateTime dt = ManagementDateTimeConverter.ToDateTime(stringdate);