2009-08-09 28 views
11

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

说时间戳是从印度尼西亚(新的CultureInfo( “ID-ID”)),这意味着该字符串是通过DateTime.Now.ToString( “YYYY-MM-DD HH:MM:SS”)中创建或类似。这意味着该字符串包含印尼当地时间。我知道我的时区,但我不知道如何将印尼时间转换为UTC/GMT,所以我可以在TimeZoneInfo中使用UTC/GMT对象。我自己的时区可能会或可能不在同一时区。

有没有任何地方,这个信息连接?

CultureInfo有很多属性,当然有些可以用来获取时区,somwhere?

我可能会补充一点,我发现整个系统非常混乱,所以我可能会想办法解决问题。

回答

9

简短回答:否

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

这是一个混乱的文化难题(哇,试着说5倍快),这是不容易解决与CLR。

+1

不,我立即注意到,这将是一个挑战。 我已经搜索了关于高阶,我发现这个维基[国家时区](http://en.wikipedia.org/wiki/Time_zones_by_country)。没有那么多时间区域的国家。 *澳大利亚,巴西,加拿大,法国,印度尼西亚(heh),墨西哥,新西兰,俄罗斯(!),英国,美国+ - * 现在使用它作为数据源,并默认为首都城市的时区很多tz,它一路走来。 只是在这里传达我的想法。 – 2009-08-09 22:00:39