iPhone:在设备时区上将 Nsstring 转换为 Nsdate

标签 iphone timezone nsstring nsdate

我从 Web 服务收到了 GMT + 1 格式的日期 (2010-02-25T20:16:50.387+05:30)。 我想转换为 NSdate。我对日期格式化程序没有正确的了解。

请建议我如何将此 nsstring 值更改为当前日期格式(时区)

最佳答案

使用 DateFormatter 将“2010-02-25T20:16”转换为 NSDate:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMdd'T'HHmm";
NSDate *gmtDate = [formatter dateFromString:@"2010-02-25T20:16"];

获得 GMT 日期后,您可以添加/减去 GMT-您的时区偏移量,以获得您所在时区的当前 NSDate。要获取您的时区和 GMT 之间的偏移量,您可以使用以下命令:

NSTimeInterval timeZoneOffset = [[NSTimeZone defaultTimeZone] secondsFromGMT];

关于iPhone:在设备时区上将 Nsstring 转换为 Nsdate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2756402/

相关文章:

javascript - 获取两个 Date 对象之间的持续时间(以小时和分钟为单位) - JavaScript

objective-c - 如何使用自定义格式将 NSDecimal 转换为 NSString

iphone - 将 UITextView/UITextField 中的空格编码为 URL 格式

php - 使用时区数据来锻炼本地用户时间

MySQL UTC 到本地时区

xcode - xcode将NSString拆分为其他NSString

iphone - 不想点击两次以使用 sharekit 应用程序在 Facebook 中分享消息?

ios - 为 Collection View 舍入浮点值时出错

iphone - 我的联系人未添加到 ios 7 的地址簿中

iphone - NSMutableArray 在 reloadData 后变为 nil