在"st"中显示日期,"nd","rd"和"th"个格式 [英] Display date in "st" , "nd", "rd" and "th" format

查看:154
本文介绍了在"st"中显示日期,"nd","rd"和"th"个格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我必须以其他格式显示日期.

I have to display date in different format.

例如 7月21日

我没有找到任何可以转换这种格式的日期的信息.如果有人知道,请帮助我.

I didn't find anything to convert my date in this format. If anyone knows please help me.

推荐答案

Swift

extension Date {

    func dateFormatWithSuffix() -> String {
        return "dd'\(self.daySuffix())' MMMM yyyy"
    }

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

示例

let date = Date()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = date.dateFormatWithSuffix()
print(dateFormatter.string(from: date))
// Output for current date: 22nd May 2019

这篇关于在"st"中显示日期,"nd","rd"和"th"个格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆