【发布时间】:2011-01-05 19:02:15
【问题描述】:
我从 xml 2009-11-23T05:24:41.000Z 中获得了价值。
现在我想显示这样的字符串:Wed, Nov 4, 2009 8:00 PM - Wed, Nov 4, 2009 9:00 PM
怎么可能?
【问题讨论】:
标签: iphone objective-c nsdate nsdateformatter
我从 xml 2009-11-23T05:24:41.000Z 中获得了价值。
现在我想显示这样的字符串:Wed, Nov 4, 2009 8:00 PM - Wed, Nov 4, 2009 9:00 PM
怎么可能?
【问题讨论】:
标签: iphone objective-c nsdate nsdateformatter
使用NSDateFormatter的方法-dateFromString:和-stringFromDate:。
【讨论】:
你会想做这样的事情:
NSDateFormatter * inputFormatter = [ [ [ NSDateFormatter alloc ] init ] autorelease ];
NSDateFormatter * outputFormatter = [ [ [ NSDateFormatter alloc ] init ] autorelease ];
[ inputFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'.000Z'" ];
[ outputFormatter setDateFormat:@"EEE, MMM d, yyyy h:mm a" ];
NSString * inputString = @"2009-11-23T05:24:41.000Z";
NSDate * inputDate = [ inputFormatter dateFromString:inputString ];
NSString * outputString = [ outputFormatter stringFromDate:inputDate ];
// outputString = @"Mon, Nov 23, 2009 05:24 AM"
有关如何配置NSDateFormatter 的更多信息,请参阅Unicode date format patterns guide。
【讨论】:
inputFormatter 的格式需要为 yyyy-MM-dd'T'HH:mm:ss.SSSZ。