我从服务器获取日期字符串及其GMT + 2我认为无法转换为印度语GMT 5:30格式这是服务器日期字符串 2017-01-11T05:08:15.157Z 我希望在印度时间格式中我尝试过以下代码但是变为空
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.Z"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
NSDate *date = [dateFormatter dateFromString:stmp]; // create date from string
[dateFormatter setDateFormat:@"dd-MM-yyyy - h:mm a"];
[dateFormatter setTimeZone:[NSTimeZone localTimeZone]];
NSString *timestamp = [dateFormatter stringFromDate:date];
NSLog(@"New Date%@", timestamp);
如何将其转换为11-01-2017 08:14 PM格式。 提前谢谢。
答案 0 :(得分:2)
通过做出小改动而不是给出日期格式 yyyy-MM-dd'T'HH:mm:ss.Z changede 到 yyyy-MM-dd'T'完成它HH:mm:ss.zzzZ 这里的工作正常是我已更改的代码我们可以将任何GMT更改为系统本地时区谢谢
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.zzzZ"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
NSDate *date = [dateFormatter dateFromString:stmp]; // create date from string
[dateFormatter setDateFormat:@"dd-MM-yyyy h:mm a"];
[dateFormatter setTimeZone:[NSTimeZone localTimeZone]];
NSString *timestamp = [dateFormatter stringFromDate:date];
NSLog(@"New Date%@", timestamp);
这是输出New Date23-12-2016 4:47 PM