您好我正在尝试将我收到的UTC日期格式化为yyyyMMddHHmmss到EST澳大利亚布里斯班日期格式,但我一直落后1小时。
我使用以下功能将本地日期输入 UTC日期时间:
+(NSString *)getUTCFormatedDateString:(NSString *)localDate
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"];
[dateFormatter setTimeZone:timeZone];
[dateFormatter setDateFormat:@"yyyyMMddHHmmss"];
NSString *dateString = [dateFormatter stringFromDate:[self getDateFromString:localDate]];
return dateString;
}
当我输入以下日期时: 03-Feb-2015 4:25 pm
我
现在,当我尝试使用以下函数将此日期字符串转换回本地日期时间将UTC日期转换回本地日期(即澳大利亚/布里斯班)时:
+(NSString *)getESTFormatedDateStringFomUTCFormatedDateString:(NSString *)UTCdate
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];d
NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"EST"];
[dateFormatter setTimeZone:timeZone];
[dateFormatter setDateFormat:@"dd-MMM-yyyy h:mm a"];
NSString *dateString = [dateFormatter stringFromDate:[self getDateFromString:UTCdate]];
return dateString;
}
我得到: 03-Feb-2015 3:25 pm
然而,输出应 03-Feb-2015 4:25 pm
我按照这里的建议尝试[NSTimeZone timeZoneWithName:@" AEST"]或[NSTimeZone timeZoneWithName:@"澳大利亚/布里斯班"]然后我得到 04-Feb -2015上午6:25
再次感谢你。
答案 0 :(得分:0)
根据EST
:+[NSTimeZone abbreviationDictionary]
返回的词典中的此条目,我希望EST = "America/New_York";
在美国的意思是“东部标准时间”。
尝试使用Australia/Brisbane
作为名称(或在+[NSTimeZone knownTimeZoneNames]
中找到更合适的内容)