与title相同。我想给我的计时器添加一个时区。我试试这个:
int G = DateTime.Now.Kind;
但是会抛出错误。如何在winforms中检查时区
您的代码不起作用,因为DateTime.Now.Kind
返回DateTimeKind
,这是一个enum,您必须显式地将其强制转换为int
:
int G = (int)DateTime.Now.Kind;
或:
DateTimeKind G = DateTime.Now.Kind;
但是正如其他人所说,它不返回时区。你应该使用:
TimeZone timeZone = TimeZone.CurrentTimeZone;
实际上,DateTime
不包含真实的时区信息。
尝试使用TimeZone.CurrentTimeZone
属性代替。
获取当前计算机的时区。
这是一个DEMO
。
另外,如果你真的对。net框架中的时区感兴趣,你应该阅读Coding Best Practices Using DateTime in the .NET Framework
,我认为这是一篇很棒的文章。
DateTime.Kind
不是关于时区的。这是一个显示日期类型的枚举:Local, UTC,Uncpecified
.