如何使用 NSDateFormatter iOS 格式化日期?
How to format date using NSDateFormatter iOS?
我尝试使用 NSDateFormatter
来格式化从 UIDatepicker
中选择的日期。但是格式化结果给出了nil
。
-(NSString *)formatDateWithString:(NSString *)date{
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyy-MMM-dd HH:mm:ss";
NSDate *formattedDate = [dateFormatter dateFromString:date];
return [dateFormatter stringFromDate:formattedDate];
}
日期输入为2016-04-22 16:30:36 +0000
(从 UIDatePicker 中选择后)。我该如何解决这个问题?
如评论中所述,您可以直接从 UIDatePicker 获取 NSDate 并直接在格式化程序中传递该日期
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MMM-dd HH:mm:ss"];
NSString *dateString = [formatter stringFromDate:datePicker.date];//pass the date you get from UIDatePicker
如果您想按照问题中提到的方式进行转换,可以这样尝试:
-(NSString *)formatDateWithString:(NSString *)date{
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss z"];
NSDate * convrtedDate = [formatter dateFromString:date];
[formatter setDateFormat:@"yyyy-MMM-dd HH:mm:ss"];
NSString *dateString = [formatter stringFromDate:convrtedDate];
return dateString;
}
我尝试使用 NSDateFormatter
来格式化从 UIDatepicker
中选择的日期。但是格式化结果给出了nil
。
-(NSString *)formatDateWithString:(NSString *)date{
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyy-MMM-dd HH:mm:ss";
NSDate *formattedDate = [dateFormatter dateFromString:date];
return [dateFormatter stringFromDate:formattedDate];
}
日期输入为2016-04-22 16:30:36 +0000
(从 UIDatePicker 中选择后)。我该如何解决这个问题?
如评论中所述,您可以直接从 UIDatePicker 获取 NSDate 并直接在格式化程序中传递该日期
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MMM-dd HH:mm:ss"];
NSString *dateString = [formatter stringFromDate:datePicker.date];//pass the date you get from UIDatePicker
如果您想按照问题中提到的方式进行转换,可以这样尝试:
-(NSString *)formatDateWithString:(NSString *)date{
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss z"];
NSDate * convrtedDate = [formatter dateFromString:date];
[formatter setDateFormat:@"yyyy-MMM-dd HH:mm:ss"];
NSString *dateString = [formatter stringFromDate:convrtedDate];
return dateString;
}