Comment obtenir le jour de la semaine sous forme de chaîne?
ios
objective-c
cocoa-touch
nsdate
Moshe
la source
la source
[dateFormatter weekdaySymbols]
(et similaire), qui renvoie un NSArray de NSStrings commençant par dimanche à l'index 0.[gregorian setFirstWeekday:2];
et pour le lundi 01/06/2015 je reçois 2 ([components weekday]
). Pourquoi? - Je trouve la réponse iciUtilisez simplement ces trois lignes:
la source
La plupart des réponses ici sont obsolètes. Cela fonctionne à partir d'iOS 8.4 et vous donne le jour de la semaine sous forme de chaîne et de nombre.
la source
weekday
composant deNSCalendar
étant unNSInteger
, vous devrez effectuer un cast[comps weekday]
en unint
, si nécessaire, sinon il affichera un avertissement à ce sujet.Voici comment procéder dans Swift 3 et obtenir un nom de jour localisé…
la source
la source
J'avais besoin d'un index simple (grégorien) du jour de la semaine, où 0 = dimanche et 6 = samedi pour être utilisé dans les algorithmes de correspondance de modèle. À partir de là, il suffit de rechercher le nom du jour dans un tableau en utilisant l'index. Voici ce que j'ai trouvé qui ne nécessite pas de formateurs de date, ni de manipulation de NSCalendar ou de composant de date:
la source
Voici le code mis à jour pour Swift 3
Code:
Pour imprimer le nom de l'événement sous forme de chaîne:
la source
Je pense que ce sujet est vraiment utile, donc je poste du code compatible Swift 2.1 .
Partout où vous pouvez appeler:
Swift 3.0
Comme @ delta2flat l'a suggéré, je mets à jour la réponse en donnant à l'utilisateur la possibilité de spécifier un format personnalisé.
la source
La réponse de Vladimir a bien fonctionné pour moi, mais j'ai pensé que je publierais le lien Unicode pour les chaînes de format de date.
http://www.unicode.org/reports/tr35/tr35-25.html#Date_Format_Patterns
Ce lien est pour iOS 6. Les autres versions d'iOS ont des normes différentes qui peuvent être trouvées dans la documentation X-Code.
la source
De cette façon, cela fonctionne dans Swift:
Attribuez ensuite les jours de la semaine aux nombres résultants.
la source
J'ai eu un problème assez étrange pour obtenir un jour de la semaine. Seul le réglage en premierWeekday ne suffisait pas. Il était également nécessaire de définir le fuseau horaire. Ma solution de travail était:
la source
Swift 2: obtenez le jour de la semaine sur une seule ligne. ( basé sur la réponse neoscribe )
la source
il y a trois symboles que nous pouvons utiliser pour formater le jour de la semaine:
Les deux documents suivants peuvent vous aider.
https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/DataFormatting/Articles/dfDateFormatting10_4.html
http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns
Démo:
vous pouvez tester votre modèle sur ce site:
http://nsdateformatter.com/
la source