将datestring转换为适当的格式

我得到一个服务器的响应,并有一个datestring我需要转换成date:

Thu Jun 29 07:15:25 +0000 2017

我正在尝试将string转换为人类可读的格式。 任何人都可以build议如何将此string转换为date?

您需要使用DateFormatter将datestringparsing为Date对象,然后使用具有要使用的输出格式的另一个DateFormatter从该Date创build一个string。

 let created_at = "Thu Jun 29 07:15:25 +0000 2017" let df = DateFormatter() df.dateFormat = "E MMM dd HH:mm:ss Z yyyy" guard let date = df.date(from: created_at) else {return} let outputFormatter = DateFormatter() outputFormatter.dateFormat = "EEE, MMM d" let outputDate = outputFormatter.string(from: date) 

如果你想知道date格式是什么样的,可以使用NSDateFormatter.com ,它有一个交互式的界面,你可以用不同的date格式来玩,也可以使用最常见的格式。

这是如何格式化在“星期四29”

 -(NSString *)formatCreatedAt:(NSString *)createdAt { NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"EEE MMM dd HH:mm:ss Z yyyy"]; NSDate *date = [dateFormat dateFromString:createdAt]; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"EEE MMM dd"]; NSString *stringFromDate = [formatter stringFromDate:date]; return stringFromDate; } 

在此方法中传递created_at的值,输出将以指定的格式返回。

Interesting Posts