2

我得到了时区的总秒数,但没有得到它早于格林威治标准时间或落后于格林威治标准时间。这是我的代码。

NSDate *sourceDate = [NSDate dateWithTimeIntervalSinceNow:3600 * 24 * 60];
NSTimeZone* destinationTimeZone = [NSTimeZone systemTimeZone];
int totalSeconds = [[NSTimeZone systemTimeZone] secondsFromGMT];
NSLog(@"sourceDate=%@ timeZoneOffset=%d", sourceDate, totalSeconds);

我想知道它是 GMT + 还是 GMT - 例如印度时区是 GMT+5:30 我用这个代码得到的总时间是 19800 秒,但如何知道它是 GMT+ 。

任何帮助将不胜感激。

4

2 回答 2

0

返回的秒数是一个整数值,取决于与 GMT 的偏移量,它是正数还是负数。

此外,您可能需要通读文档。它在第一节中讨论了这一点。

于 2011-11-14T06:25:54.260 回答
0

你得到的结果是正确的,如果它是 GMT- 你会得到一个负值,你可以使用以下检查:

if (totalSeconds >= 0){
    // it's GMT+
} else {
    // it's GMT-
}
于 2011-11-14T08:17:10.737 回答