1
我从网站中找到以下代码(对不起,我现在不记得现在的引用),但是,它给了我当前时区偏移量为我的电脑。因此,例如,此代码:如何获得正确的时区偏移(从夏令时开始)
Dim plusminus As String = If((tz.Hours > 0), "+", "-")
Dim NewTimeZone As String = String.Format("{0}{1:00}:{2:00}", plusminus, Math.Abs(tz.Hours), tz.Minutes)
给我'+09:30'作为输出。这是完美的。但是,由于夏令时已经发生影响,现在相同的代码给了我'+10:30',这实际上是不正确的。
有人可以advsise用于检索正确的偏移量(无论是在和夏令时的时间),并以相同的格式返回一个更好的方法:事先(+09 30)
感谢
你是依靠对字符串类型,因此没有什么可以做(除了硬编码许多修改参数,如你所愿)。处理日期/时间时的逻辑事项依赖于日期/时间类型。如果你使用适当的类型,你会有不同的选择;例如,依靠不同的时区(DayLight Savings是给定类型的属性之一):http://msdn.microsoft.com/en-us/library/bb397769.aspx – varocarbas
目前还不清楚你在问什么。你只显示字符串格式化代码 - 而不是你如何获得'tz'变量。 “正确”是什么意思?你说+10:30是“不正确的”,因为它具有DST - 但大多数人会说*不*应用DST将是不正确的。你的用例是什么? –