ios - 如何显示带有日期的时区缩写

标签 ios objective-c timezone nsdateformatter nstimezone

我得到了 UTC 时间,并且想要附加时区缩写。我有下面的代码来获取时区缩写,但它给出的是 GMT +5.30。我想要作为 IST。

对于美国,它给出的是 EDT,我需要所有时区给出 3 个字母的缩写。

这可能吗?

请检查以下代码:

NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate* sourceDate = [dateFormatter dateFromString:@"2015-03-16T13:08:17.989Z"];
NSTimeZone* destinationTimeZone = [NSTimeZone defaultTimeZone];
NSString *str =[destinationTimeZone abbreviation];

NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init];

[dateFormat setDateFormat:@"MMMM dd yyyy, HH:mm "];
NSString* localTime = [dateFormat stringFromDate:sourceDate];
NSString* str1 = [NSString stringWithFormat:@"%@, %@",localTime, str];
NSLog(@"localTime:%@", str1);

输出为:

localTime:March 16 2015, 18:38 , GMT+5:30

我需要它

localTime:March 16 2015, 18:38 , IST

请帮忙!

最佳答案

您可以将时区设置为您的日期,例如:

[dateFormat setTimeZone:DesiredTimeZone];

然后使用日期格式化程序对其进行格式化:

NSDateFormatter *formatter = [NSDateFormatter new];
formatter.dateFormat = @"dd MMM @ HH:mm z";

根据时区以 03 字母格式将代码写入 z 属性。

了解更多详情click here

关于ios - 如何显示带有日期的时区缩写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29093944/

相关文章:

ios - 以编程方式删除 UIButton 背景颜色

Python AppKit 和 Objective C 委托(delegate)

java - java.util.Date 中的默认时区是什么

iphone - 处理 Cocoa 中的时区

ios - 在 swift 中与 NSDateFormatter 作斗争

ios - React Native - npx react-native run-ios 在初始化项目后不起作用

ios - NSUserDefaults setObject :forKey deadlocks?

ios - 当 ios 中该部分数据为空时,我如何删除 uitableview 部分?

objective-c - 流式传输数据以响应 CFHTTPMessageRef 可能吗?

java - 隐式设置什么时区?