iphone – NSDateFormatter setDateFormat的有序月日后缀选项

iphone – NSDateFormatter setDateFormat的有序月日后缀选项,第1张

概述NSDateFormatter的什么setDateFormat选项用于获取一个月的序数后缀? 例如以下代码段目前生成: 下午3:11星期六 我必须改变什么: 下午3:11星期六8月15日 NSDate *date = [NSDate date];NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease NSDateFormatter的什么setDateFormat选项用于获取一个月的序数后缀?

例如以下代码段目前生成:
下午3:11星期六

我必须改变什么:
下午3:11星期六8月15日

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等效于PHP格式化字符串中的S选项?

解决方法 这些答案都不像我所使用的那样美观,所以我想我会分享:

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"    }}

目标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";    }}

显然,这只适用于英语。

总结

以上是内存溢出为你收集整理的iphone – NSDateFormatter setDateFormat的有序月日后缀选项全部内容,希望文章能够帮你解决iphone – NSDateFormatter setDateFormat的有序月日后缀选项所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1047515.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存