C# 日期时间格式为20131205205012.000000-000
例如,当我使用WMI查询事件日志时,事件发生的时间是20131205205012.000000-000 如何将其转换为yymmdd hh:mm:ss或类似格式 出于兴趣,这是什么格式 C#代码C# 日期时间格式为20131205205012.000000-000,c#,C#,例如,当我使用WMI查询事件日志时,事件发生的时间是20131205205012.000000-000 如何将其转换为yymmdd hh:mm:ss或类似格式 出于兴趣,这是什么格式 C#代码 this.radGridViewEvents.Columns.Add("Time Written"); ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FRO
this.radGridViewEvents.Columns.Add("Time Written");
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_NTLogEvent WHERE EventType = 1");
foreach (ManagementObject queryObj in searcher.Get())
{
this.radGridViewEvents.Rows.Add(queryObj["TimeWritten"]);
}
其UTC格式与此类似,但没有分隔符/标点符号
2013-12-05T18:13:27+00:00
我不确定-000代表什么,但我假设其余的是第二个分数。解析它的一种方法是使用DateTime.ParseExact。假设你删掉-000,你可以像这样解析其余的
var date = DateTime.ParseExact("20131205205012.000000",
"yyyyMMddHHmmss.ffffff",
CultureInfo.InvariantCulture,
DateTimeStyles.AssumeUniversal |
DateTimeStyles.AdjustToUniversal);
-000是GMT偏移量,也可以是正数那么您是否将其作为字符串获取?(它看起来像是yyyyMMddHHmmss.ffffff,结尾可能是UTC偏移量。)这并没有告诉我们值的类型。我怀疑它是一个字符串,但我建议您调试并查看类型是什么-索引器只返回
object
,所以这并不能告诉我们太多。您可以尝试通过转换器将其馈送,看看它是否转换为DateTime,值是否以“-000”以外的任何值结尾?