如标题所示。我想在我的计时器中添加一个时区。 我试试这个:
int G = DateTime.Now.Kind;
但它会引发错误。 我如何在winforms中查看时区?
答案 0 :(得分:2)
您的代码无效,因为DateTime.Now.Kind
会返回DateTimeKind
这是一个枚举,您必须明确地将其转换为int
:
int G = (int)DateTime.Now.Kind;
或:
DateTimeKind G = DateTime.Now.Kind;
但正如其他人所说,它不会返回时区。你应该使用:
TimeZone timeZone = TimeZone.CurrentTimeZone;
答案 1 :(得分:0)
实际上,DateTime
不包含实时区域信息。
尝试使用TimeZone.CurrentTimeZone
属性而不是。
获取当前计算机的时区。
这是DEMO
。
另外,如果您真的对.NET Framework中的时区感兴趣,那么您应该真正阅读Coding Best Practices Using DateTime in the .NET Framework
,这是我认为很棒的文章。
答案 2 :(得分:0)
DateTime.Kind
与时区无关。它是枚举,显示的是哪种日期:Local, UTC,Uncpecified
。