Objective c NSDateFormatter:Converting";2012年5月13日上午6:05;(美国东部时间)至;2012年5月13日12:05“;(IT,格林尼治标准时间+;1)
我正在从服务器检索时间值。格式为: “2012年5月13日上午6:05” 字符串中没有指定它,但我知道它是“EDT” 我需要: 1) 摆脱上午/下午的事情 2) 将其从EDT(或其他时区)转换为本地GMT+/-x时间 对于我的时区(意大利,格林尼治标准时间+1),它应该是: “2012年5月13日12:05” 如何使用NSDateFormatter执行此操作Objective c NSDateFormatter:Converting";2012年5月13日上午6:05;(美国东部时间)至;2012年5月13日12:05“;(IT,格林尼治标准时间+;1),objective-c,nsdateformatter,Objective C,Nsdateformatter,我正在从服务器检索时间值。格式为: “2012年5月13日上午6:05” 字符串中没有指定它,但我知道它是“EDT” 我需要: 1) 摆脱上午/下午的事情 2) 将其从EDT(或其他时区)转换为本地GMT+/-x时间 对于我的时区(意大利,格林尼治标准时间+1),它应该是: “2012年5月13日12:05” 如何使用NSDateFormatter执行此操作 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dat
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setLocale: [NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[dateFormatter setDateFormat:@"dd-MM-yyyy HH:mm"];
谢谢
Nicola首先,将NSDateFormatters dateFormat设置为源格式。就你而言:
[dateFormatter setDateFormat:@"M/d/yyyy h:mma"];
NSDate *myDate = [dateFormatter dateFromString:@"5/13/2012 6:05am"];
这将创建NSDate的新实例。现在将格式化程序dateFormat设置为目标格式:
[dateFormatter setDateFormat:@"dd/MM/yyyy hh:mm"];
NSString *myString = [dateFormatter stringFromDate:myDate];
您还可以使用两个日期格式化程序,一个用于将您的字符串转换为NSDate实例,另一个用于将其转换回正确的NSString
有关更多信息和当前格式规范的完整列表,请参阅和。首先,您可以将NSDateFormatters dateFormat设置为源格式。就你而言:
[dateFormatter setDateFormat:@"M/d/yyyy h:mma"];
NSDate *myDate = [dateFormatter dateFromString:@"5/13/2012 6:05am"];
这将创建NSDate的新实例。现在将格式化程序dateFormat设置为目标格式:
[dateFormatter setDateFormat:@"dd/MM/yyyy hh:mm"];
NSString *myString = [dateFormatter stringFromDate:myDate];
您还可以使用两个日期格式化程序,一个用于将您的字符串转换为NSDate实例,另一个用于将其转换回正确的NSString
有关更多信息和当前格式规范的完整列表,请参阅和