【问题标题】:How to get timezone from properties in CultureInfo如何从 CultureInfo 中的属性获取时区
【发布时间】:2010-11-18 03:33:29
【问题描述】:

我有一个字符串,其中包含一个时间戳(yyyy-mm-dd hh:mm:ss)。我可以根据我得到的其他信息创建一个CultureInfo 对象。因此我知道时间戳在哪个国家。时间戳不是UTC/GMT。

假设时间戳来自印度尼西亚 (new CultureInfo("id-ID")),这意味着该字符串是由以下代码或类似代码创建的。

DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");

这意味着该字符串包含印度尼西亚的当地时间。我知道我的时区,但我不知道如何将印度尼西亚时间转换为 UTC/GMT,所以我可以在 TimeZoneInfo 中使用 UTC/GMT 对象。我自己的时区可能在也可能不在同一时区。

有没有什么地方,这个信息是有联系的?

CultureInfo 有很多属性,肯定有一些可以用来获取时区吗?

我可能会补充一点,我发现整个系统非常混乱,所以我认为事情的运作方式可能会有所偏差。

【问题讨论】:

    标签: c# cultureinfo timezone


    【解决方案1】:

    简短回答:否

    长答案:这是文化和时区之间的一对多关系。例如: en-US - 英语,美国包含 6 个时区...那么您如何从 en-US 到东部夏令时间? ...以及如何获得夏令时偏移量?

    这是一个令人困惑的文化难题(哇,试试说快 5 倍),用 CLR 不容易解决。

    【讨论】:

    • 不,我很快就注意到这将是一个挑战。我用谷歌搜索了一下升技,发现了这个 wiki Time zones by country。有那么多时区的国家并不多。 澳大利亚、巴西、加拿大、法国、印度尼西亚 (heh)、墨西哥、新西兰、俄罗斯 (!)、英国、美国 +- 现在使用它作为数据源,并默认为首都的时区有很多 tz 的国家,它一直在前进。只是在这里宣扬我的想法。
    猜你喜欢
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-24
    • 1970-01-01
    • 2013-11-10
    相关资源
    最近更新 更多