NSDateFormatter setDateFormat 的序号月日后缀选项

2023-12-04

我使用 NSDateFormatter 的什么 setDateFormat 选项来获取月份的序数后缀?

例如下面的代码片段当前生成:
8 月 15 日星期六下午 3:11

我必须改变什么才能得到:
8 月 15 日星期六下午 3:11th

NSDate *date = [NSDate date];
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4];
[dateFormatter setDateFormat:@"h:mm a EEEE MMMM d"];
NSString *dateString = [dateFormatter stringFromDate:date]; 
NSLog(@"%@", dateString);

在 PHP 中,我将使用它来处理上面的情况:
<?php echo date('h:m A l F jS') ?>

是否有一个 NSDateFormatter 相当于SPHP 格式化字符串中的选项?


这些答案都不像我正在使用的那样美观,所以我想我会分享:


Swift 3:

func daySuffix(from date: Date) -> String {
    let calendar = Calendar.current
    let dayOfMonth = calendar.component(.day, from: date)
    switch dayOfMonth {
    case 1, 21, 31: return "st"
    case 2, 22: return "nd"
    case 3, 23: return "rd"
    default: return "th"
    }
}

Objective-C:

- (NSString *)daySuffixForDate:(NSDate *)date {
    NSCalendar *calendar = [NSCalendar currentCalendar];
    NSInteger dayOfMonth = [calendar component:NSCalendarUnitDay fromDate:date];
    switch (dayOfMonth) {
        case 1:
        case 21:
        case 31: return @"st";
        case 2:
        case 22: return @"nd";
        case 3:
        case 23: return @"rd";
        default: return @"th";
    }
}

显然,这仅适用于英语。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NSDateFormatter setDateFormat 的序号月日后缀选项 的相关文章

  • MKAnnotationView 的不同字体

    在iPhone SDK地图上的标注气泡上 可以更改标题和副标题属性的字体吗 我对标注气泡中显示的默认字体不满意 并且希望使用不同的字体来匹配我的应用程序的其余部分 然而 我没有看到太多提及这一点 这让我担心这可能是不可能的 我见过构建自定义
  • ViewWillDisappear 与 dealloc

    我将 NSlog 放入视图控制器的 dealloc 方法中 它不会被一致调用 我确实注意到 ViewWillDisappear 确实总是被调用 将我所有整洁的升级代码移到这里可以吗 将东西设置为 Nil 并释放调用 有人对为什么 deall
  • 如何在按下按钮之前停止响应震动?

    我目前正在制作一个 iPhone 应用程序 动画会对轻微的震动做出反应 这是我的代码 static BOOL SJHShaking UIAcceleration last UIAcceleration current double thre
  • 为什么我们需要一个临时对象?

    正如我在许多示例中看 到的那样 首先它们为临时对象分配内存 然后将同一对象分配给 self 例如 我这里有一个代码片段 void viewDidLoad super viewDidLoad Movie newMovie Movie allo
  • 检查 NSDictionary 是否为空

    我想检查是否NSDictionary是空的 我正在这样做 mutDictValues NSUserDefaults standardUserDefaults objectForKey dicValues mutableCopy NSLog
  • 查找附近应用程序的用户(iPhone 和 Android)

    我正在开发一个有 iPhone 版本和 Android 版本的应用程序 我的目标是 显示我的应用程序的附近用户列表 iPhone 应用程序用户和 Android 应用程序用户 假设列出当前在 1 英里或 2 英里半径内并且当前正在使用我的应
  • 图像不能包含 Alpha 通道或透明度

    Apple 发布了新版本的 iTunes Connect 当我尝试在 iTunes Connect 上为我的应用程序设置屏幕截图时 收到一条错误消息 Images can t contain alpha channels or transp
  • 将英语日期转换为法语、nsdate、本地化的最佳方法

    我的财产dob of Patient对象是String目前正在存储12 Jan 2017我想将其转换为法语语言环境 例如12 Janv 2017 以下是我的步骤 转换12 Jan 2017 into 1954 09 07 04 00 00
  • iPhone 倾斜 CALayer

    我是初学者 我正在做一些练习来熟悉 CALayer 我只是想知道如何 倾斜 或倾斜 CALayer 45 角 谢谢 CALayers 有一个属性 affineTransform这需要一个CGA仿射变换 http developer appl
  • 收到断言失败错误

    加载其中包含 UITableView 的视图之一时 出现以下错误 有谁知道如何修理它 我已经尝试过删除 void tableView UITableView tableView commitEditingStyle UITableViewC
  • NSTextField:当用户单击文本字段之外时结束编辑

    我有一个NSTextField我根据用户操作设置可编辑 我想在用户单击窗口内文本字段之外的任何位置时结束编辑 看起来很简单 但我无法让它发挥作用 我实施了controlTextDidEndEditing and textDidEndEdit
  • 当具有 PagingEnabled 的 UIScrollView 更改页面时如何更新 UIPageControl?

    我该如何做到这一点 以便当用户滚动到 UIScrollView 中的新页面时 UIPageControl 更新 我以前用过这个 看起来效果很好 请务必将 UIScrollView delegate 设置为 self pragma mark
  • iOS 5.0中不调用UINavigationBar的drawRect

    我已经覆盖 放置在类别中 或混合 UINavigationBar 的drawRect 以显示自定义背景 在 iOS 5 中它不起作用 我应该怎么办 为导航栏设置自定义背景以支持 iOS 5 和 iOS 4 http www mladjana
  • UILocalizedIndexedCollat​​ion的sectionForObject:(id)object collat​​ionStringSelector:(SEL)selector方法中selector的作用是什么

    我是 iOS 开发的初学者 正在经历this https developer apple com library ios documentation UserExperience Conceptual TableView iPhone Cr
  • 进入/退出编辑模式时重绘 UITableViewCell

    我有一个表格视图 其中根据表格是否正在编辑 单元格的构建方式有所不同 具体来说 处于编辑模式时选择样式为无 非编辑模式时选择样式为蓝色 当我从一个单元转换到另一个单元时 我注意到某些单元格没有更新 快速的日志记录告诉我 即使单元格的外观发生
  • iPhone UITableView 分页结果

    对从服务器拉取的大量结果进行分页的最佳方法是什么 就服务器而言 我可以抵消和限制结果 因此我一次只能提取 25 个结果 但是允许用户查看更多结果而不需要像应用商店一样不断向下滚动不断增长的列表的最佳方式是什么应用程序 谢谢 豪伊 要在列表底
  • 在 UITableView 上显示徽章信息

    我希望在 UITableView 行上显示徽章信息 如下图所示 我尝试使用下面的代码 UILabel labelCell1 UILabel alloc init labelCell1 frame CGRectMake 160 9f 10 0
  • 如何在iPhone应用程序中的类结构中实现主键和外键表数据[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何连接sqlite数据库中的两个表数据 if sqlite3 open dbPath UTF8String database SQL
  • 从视频创建缩略图 - 提高速度性能 - AVAsset - iPhone [重复]

    这个问题在这里已经有答案了 我正在使用基于以下线程中的代码的代码来生成视频缩略图 从 iPhone SDK 中的视频 URL 或数据获取缩略图 https stackoverflow com questions 1347562 gettin
  • 如何建立辅助NSSortDescriptor排序键?

    我已成功按排序键对数据进行排序lastName 但我想知道如何排序lastName 然后由firstName 这是我用来排序的代码lastName NSSortDescriptor sortDescriptor NSSortDescript

随机推荐