iOS 日期格式 2016 年 3 月 28 日 / 下午 16:54



我想以字符串"2017-05-05T08:27:31.337Z"中的"28 Mar 2016/16:54pm"格式显示日期。我该怎么做?iOS有内置方法吗?谢谢。

使用NSDateFormatter作为您的概念

例如

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate *msgDate = [dateFormatter dateFromString:@"2017-05-05T08:27:31.337Z"];
 [dateFormatter setDateFormat:@"dd MMM yyyy / HH:mma"];
NSString *final = [dateFormatter stringFromDate:msgDate];

更新

dateFormatter中添加setAMSymbolsetPMSymbol

 [dateFormatter setAMSymbol:@"am"];
 [dateFormatter setPMSymbol:@"pm"];

完整答案

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate *msgDate = [dateFormatter dateFromString:@"2017-05-05T08:27:31.337Z"];
[dateFormatter setDateFormat:@"dd MMM yyyy / HH:mma"];
[dateFormatter setAMSymbol:@"am"];
[dateFormatter setPMSymbol:@"pm"];
NSString *final = [dateFormatter stringFromDate:msgDate];

请参阅每一行的说明或介绍

NSString *str = @"your date here..."; /// here this is your date with format yyyyy-MM-dd'T'HH:mm:ss.SSSZ
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; // here we create NSDateFormatter object for change the Format of date..
[dateFormatter setDateFormat:@"yyyyy-MM-dd'T'HH:mm:ss.SSSZ"]; //// here set format of date which is in your output date (means above str with format)
NSDate *date = [dateFormatter dateFromString: str]; // here you can fetch date from string with define format
dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd MMM yyyy / HH:mma"];// here set format which you want...
NSString *convertedString = [dateFormatter stringFromDate:date]; //here convert date in NSString
NSLog(@"Converted String : %@",convertedString);

相关内容

最新更新