ios - 使用缩写的月/日名称格式化 NSDate

标签 ios objective-c nsstring

如果我有一个 NSDate 对象,我如何格式化 NSString 以仅输出当天的前 3 个字母(如周一、周二、周三、周四、周五、周六、周日)和该月的前 3 个字母(Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、Dec)?

目前我正在使用这个NSDateFormatter:

        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
        dateFormatter.dateFormat = @"MMMM dd yyyy";

        NSDate *date = ...
        NSString *dateString = [dateFormatter stringFromDate:date];

        NSLog(@"dateString: %@",dateString);
        // outputs August 09 2013
        // I would like the output to be Fri, August 9

编辑

我也试过使用 NSDateComponent 但我想知道是否有一些获取缩写的捷径......

NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit fromDate:date];

最佳答案

根据 rmaddy 友情提供的链接,@"EEE, MMM d"; 是解决方案

关于ios - 使用缩写的月/日名称格式化 NSDate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18197061/

相关文章:

ios - iTunes 通知服务器每次付款

objective-c - 如何循环遍历数组并将 UITableView 中的文本变灰

objective-c - Unicode 格式化编译器警告 : Format specifies type 'unsigned short' but the argument has type 'int'

ios - didUpdateUserLocation 没有被调用重新加载 View

ios - 当我删除包含核心数据的单元格时,同一单元格显示两次

ios - 来自另一个 UIViewController Nib 内的 Nib 的自定义 UIView - IBOutlets 为零

iphone - 适用于 iOS 的 pretty-print 距离

swift - 是否需要调用 super.prepareForSegue :?

iphone - 将 Unichar 数组转换为单个 NSString

iphone: -[CFString release]: 消息发送到已释放的实例