iPhone OS: Comment puis-je créer un NSDate pour une date précise?
Semble comme une chose simple, mais je n'arrive pas à trouver un moyen de le faire.
Il serait bien de voir un couple de différentes méthodes.
Vous devez vous connecter pour publier un commentaire.
@Chuck réponse est bonne, et de m'entrainer au code suivant. J'ai pensé partager:
setHour
,setMinute
,setSecond
, etc. pour une granularité plus fine.Vous pouvez utiliser cette
Espère que cela va vous aider.
Si vous parlez d'un calendrier précis à une date plutôt qu'une UNIXy date, vous voudrez probablement NSCalendar de
dateFromComponents:
.Swift Exemples
Les exemples sont souvent le moyen le plus facile pour apprendre. Ici sont quelques exemples.
Maintenant
Celui-ci est le plus simple.
20 février 2017
Le 1er avril 1976
Besoin de plus de détails...?
Il y a d'autres façons de créer des dates, trop. Si vous voulez apprendre de celles-ci, ainsi que la façon de affichage une date, puis voir ma réponse plus complète.
Consultez la documentation de NSDate. Vous pouvez utiliser le
dateFromString:
méthode deNSDateFormatter
ou ladateFromComponents:
méthode deNSCalendar
.init
?J'ai trouvé ce fil tout en cherchant une réponse à cette question mais j'ai trouvé un bon exemple, dans l'un de mes Big Nerd Ranch Objective-C Programmation livre. Le crédit à eux, pas à moi.
C'est ridicule, n'est-ce pas ?
La mi-2013 et Apple encore n'a pas fourni un moyen simple d'un NSDate valeur.
Lors de mon iPad actuel du projet, je ne pouvais pas croire que j'ai dû arrêter de la productivité pour un temps à écrire ma propre classe d'assistance pour obtenir la valeur de l'Année à partir d'un NSDate. Je veux dire, allez, c'est des trucs de base.
De toute façon, voici la classe helper j'ai utilisé dans mon projet, pour convertir une chaîne en un NSDate valeur :
L'aide de ce code, vous pouvez créer une NSDate valeur en utilisant quelque chose comme:
Remarque: cette fonction est basée sur le code prises à partir d'ici:
https://stackoverflow.com/a/3968411/391605
Ma solution avait été d'utiliser le code suivant, mais j'ai trouvé que parfois, il n'aurait tout simplement pas analyser, et serait de retour néant.
Je me souviens qu'il a échoué lamentablement sur Oct 12, 2012"... et c'est pourquoi j'ai donné et utilisé le plus compliqué "parseDateString" fonction indiquée ci-dessus.
Mon point est... être prudent.
Certains de la très-base NSDate fonctions ne fonctionnent pas correctement...