NEW: Master Swift design patterns with my latest book! >>

How to format dates with an ordinal suffix using NumberFormatter's ordinalStyle

Written by Paul Hudson    @twostraws

As of iOS 9.0, Apple introduced a simple way to make ordinal style numbers, which is a fancy way of saying 1st, 2nd, 3rd or 100th – the kind of numbers you normally write for dates, for example. This uses the NumberFormatterStyle.ordinal style of writing numbers with NumberFormatter, like this:

let formatter = NumberFormatter()
formatter.numberStyle = .ordinal
let first = formatter.string(from: 1)
let second = formatter.string(from: 2)
let tenth = formatter.string(from: 10)
let oneThousandAndFirst = formatter.string(from: 1001)

Available from iOS 9

Did this solution work for you? Please pass it on!

Other people are reading…

About the Swift Knowledge Base

This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.

Swift on the server is here

Get ahead of the game and learn server-side Swift with my latest book – build real-world projects while you learn!

Click here to visit the Hacking with Swift store >>