2011-12-26 92 views
4

是否有任何有效的方法来将NSDate转换为RFC 2822日期格式字符串? 我想用这个字符串来创建一个NSURLRequest并设置“If-Modified-Since”头字段的值。NSDate到RFC 2822日期格式

回答

16

尝试使用NSDateFormatter

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; // maybe there exist a new-method now 
dateFormatter.dateFormat = @"EEE, dd MMM yyyy HH:mm:ss Z"; //RFC2822-Format 
NSString *dateString = [dateFormatter stringFromDate:myDate]; 
+0

是的,这为我工作。谢谢托马斯。 – Soni 2011-12-27 04:07:57

+2

我想你也需要设置语言环境。 – 2013-07-02 20:53:27

+5

额外的行将是'dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@“en_US_POSIX”];' – 2013-07-02 21:04:16

0

斯威夫特3

let rfcDateFormat = DateFormatter() 
rfcDateFormat.dateFormat = "EEE, dd MMM yyyy HH:mm:ss Z" 
let dateSTring = rfcDateFormat.string(from: Date()) 
//today result: Mon, 06 Feb 2017 17:21:18 +0100