我有这种格式的日期:
2012-06-26 12:00:00 +0000
我想要做的是以这种格式转换它们:
Jun 26, 2012 12:00:00 AM
有没有一种简单的方法可以在obj-c上执行此操作,或者我必须解析所有硬核,并为此创建自己的函数?如果是,任何想法如何看起来像,因为我是iOS新手。 非常感谢您阅读我的帖子:D
答案 0 :(得分:6)
要将1个字符串转换为另一个字符串,请使用以下
NSString *inputString = @"2012-06-26 12:00:00 +0000";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd hh:mm:ss z"];//input
NSDate *date = [formatter dateFromString:inputString];
[formatter setDateFormat:@"MMM dd, yyyy hh:mm:ss a"];
NSString *outputString = [formatter stringFromDate:date];
NSLog(@"output : %@",outputString);
答案 1 :(得分:1)
首先,您应该在NSDate中转换您的字符串(使用NSDateFormatter),然后将其转换回具有目标格式的NSString(仍具有相同的NSDateFormatter)。
以下是NSDateFormatter的示例:
NSString *dateString = @"2013-04-01T22:00:00Z";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
[dateFormatter setTimeZone:[NSTimeZone defaultTimeZone];
NSDate *theDate = [dateFormatter dateFromString:dateString];