如何将24小时string时间转换为12小时时间string格式

我有时间在NSString像“15:15”

我想隐藏这个NSString时间到12小时NSString(即“3:15 PM”)。

使用NSDateFormatterNSDate打开string。 然后再次使用dateformatter将NSDate更改为一个string。

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; dateFormatter.dateFormat = @"HH:mm"; NSDate *date = [dateFormatter dateFromString:@"15:15"]; dateFormatter.dateFormat = @"hh:mm a"; NSString *pmamDateString = [dateFormatter stringFromDate:date]; 

代码可能包含一些错误,无需编译或testing编写。

@python

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]; [dateFormatter setLocale:locale]; [dateFormatter setDateFormat:@"hh:mm"]; 

希望这可以帮助!

看看这个问题: NSDateFormatter dateFromString和iPhone 24小时格式混乱

您应该可以使用NSDateFormatter来格式化所需的时间样式,然后将string读入到格式化程序中,然后以所需的格式将其退出。

 // Get your 24 hr time String format NSString *timeString = [NSString stringWithFormat:@"%@",[[[arr valueForKey:@"data"] valueForKey:@"pickup_time"] objectAtIndex:indexPath.row]]; //Store your 24 hr time String format into string NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"HH:mm:ss"]; NSDate *time = [dateFormatter dateFromString:timeString]; // Convert time object into desired format [dateFormatter setDateFormat:@"hh:mm.a"]; cell.lbl_BookingTm.text = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:time]]; //Get your string into 12 hr time String format