Dans le calendrier hébreu, les jours du mois sont du texte.

Par exemple, le premier de « Sivan » (nom d'un mois) s'écrit « א » en hébreu (et non « 1 » comme dans le calendrier grégorien). C'est mon code :

let formatter = DateFormatter()
formatter.calendar = Calendar(identifier: .hebrew)
formatter.dateFormat = "d"
print(formatter.string(from: date)) // "1"

Mais malheureusement, au lieu d'obtenir א, j'obtiens 1.

Je voulais savoir s'il y avait un moyen de l'obtenir comme il aurait dû être ? Merci

1
אורי orihpt 17 oct. 2020 à 19:20

1 réponse

Meilleure réponse

Au départ, je pensais qu'il s'agissait simplement de définir Locale sur le DateFormatter, mais il s'est avéré qu'un style de date devait également être défini :

let formatter = DateFormatter()
formatter.calendar = Calendar(identifier: .hebrew)

formatter.locale = Locale(identifier: "he") // <- this
formatter.dateStyle = .short                // <- and this

formatter.dateFormat = "dd"                 // after dateStyle

print(formatter.string(from: Date())) // כ״ט
2
New Dev 25 oct. 2020 à 16:12