ios - 如何更改包含日期的 NSMutablearray 对象的日期格式?

标签 ios objective-c nsmutablearray nsdateformatter

我有一个包含日期的 NSMutableArray

例如:

 NSMutableArray *arrDates = [[NSMutableArray alloc]initWithObjects:@"22/07/2042","05/04/2015","22/08/2015","22/08/2015","22/09/2015","22/09/2015", nil];

我想更改 MM/dd/yyyy 格式中该日期的格式,而该日期的格式为 dd/MM/yyyy 格式。 更改格式后,我想存储在另一个 NSMutableArray 中。 我怎样才能做到这一点??

最佳答案

我的建议是保留单个 NSDate 对象数组。 NSDate 表示一个日期,与格式无关。要从 NSDate 获取格式化的 NSString,您可以使用 NSDateFormatter

NSDate *date = self.dates[index];
self.dateFormatter.dateFormat = @"dd-MM-yy";
NSString *dateString = [self.dateFormatter stringFromDate:date];

NSDateFormatter 也可以将 NSString 转换为 NSDate。因此,当您从 Web 服务解析字符串时,您应该将它们转换为 NSDate 对象进行存储:

NSString *dateString = stringFromServer;
self.dateFormatter.dateFormat = @"dd-MM-yy";
NSDate *date = [self.dateFormatter dateFromString:dateString];

关于ios - 如何更改包含日期的 NSMutablearray 对象的日期格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31572660/

相关文章:

ios - 在 UISnapBehavior 动画期间如何保持 UIScrollView 内的相对滚动位置?

ios - NSMutableArray 索引 1 超出范围 [0 .. 0]

ios - NSMutableArray,检查哪个值最丰富?

ios - 标签栏项目被拖出

ios - 无法加载名为 "Project name"的模型

ios - 在框架模块内包含非模块化 header - Xcode 9.2

ios - uicollectionview 在底部滚动加载更多数据。 iOS swift

ios - 在 UIScrollView 滚动时暂停任何操作

iphone - AVAudioPlayer 中的快退和快进

objective-c - 使用 SMJobBless() 编写特权帮助工具