-2

如标题。我想在我的计时器中添加一个时区。我试试这个:

int G = DateTime.Now.Kind;

但它抛出一个错误。我如何在 winforms 中检查时区?

4

3 回答 3

2

您的代码不起作用,因为DateTime.Now.Kind返回 aDateTimeKind这是一个枚举,您必须将其显式转换为int

int G = (int)DateTime.Now.Kind;

或者:

DateTimeKind G = DateTime.Now.Kind;

但正如其他人所说,它不会返回时区。你应该使用:

TimeZone timeZone = TimeZone.CurrentTimeZone;
于 2013-01-20T11:26:43.593 回答
0

实际上,DateTime不包含实时时区信息。

尝试使用TimeZone.CurrentTimeZone属性而不是。

获取当前计算机的时区。

这是一个DEMO.

另外,如果您真的对 .NET Framework 中的时区感兴趣,那么您真的应该阅读Coding Best Practices Using DateTime in the .NET Framework我认为哪篇文章很棒。

于 2013-01-20T11:17:46.363 回答
0

DateTime.Kind与时区无关。它是显示日期类型的枚举:Local, UTC,Uncpecified

于 2013-01-20T11:18:07.527 回答