使用NSDateFormatter动态设置日期格式

时间:2015-04-24 11:54:02

标签: ios iphone nsdate nsdateformatter

我从服务器获取日期和时间,我需要获取日期。

有时“2015-04-20 11:40:05 Etc / GMT”,有时候“2015-04-20T11:40:05Z”

那么如何动态设置日期格式?

下面是我的代码:

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
NSDate *purchaseDate = [dateFormatter dateFromString:strPurchaseDate];

我想动态设置日期格式。任何帮助?

2 个答案:

答案 0 :(得分:0)

您可以尝试使用NSDataDetector http://nshipster.com/nsdatadetector/

答案 1 :(得分:0)

考虑使用NSDateFormatter dateFormatFromTemplate:options:locale:https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSDateFormatter_Class/Reference/Reference.html#//apple_ref/occ/clm/NSDateFormatter/dateFormatFromTemplate:options:locale

e.g。使用当前语言环境值([NSLocale curentLocale])或使用[dateFormatter setLocale:...],指定所选语言

NSLocale * usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@" en_US"];

[dateFormatter setTimeStyle:...] 设置t NSDateFormatterShortStyleNSDateFormatterMediumStyleNSDateFormatterLongStyle