0
votes

Obtenir des dates entre startdate et enddate de la matrice à Swift

Comme je suis nouveau à Swift, je suis coincé ici de très longtemps, j'essaie d'obtenir la date de la matrice entre la date de début et la date de fin ,.

J'ai essayé ce code qui a été référé de [https: //stackoverflow.com/questions/10216991/ftching-dates-Qui-comes-between-startdate-and-and-enddate], mais je reçois l'erreur de "valeur de type" [date] 'n'a aucun membre "filtré" " . code> p>

dans SWIFT P>

var predicate = NSPredicate(format: "(SELF > %@) AND (SELF < %@)", startdate!, enddate!)
var result = arrayWithDates.filtered(using: predicate)

Expected output: 
dateArray = ["12/01/1996","13/01/1996","15/01/1996","17/01/1996"]
startdate = "13/01/1996" 
enddate = "17/01/1996"
output = ["13/01/1996","15/01/1996","17/01/1996"]


7 commentaires

Veuillez vérifier cette Stackoverflow.com/a/51587796/10150796


@Nikunj Kumbhani Merci de votre réponse, ce n'est pas mon cas, je dois obtenir les dates de [dates], pas de calandre.


@Dahiya_boy déjà j'ai mentionné dans ma question, j'ai utilisé le même code mais j'ai une erreur comme "la valeur du type" [date] 'n'a aucun membre "filtré" "


@Swift_prasad Je sais, mais vous pouvez mettre la condition selon vos attentes tout en ajoutant la date dans MyDates Array


@Swift_prasad Essayez Nikunj Répondre. Son travail Je suppose et j'espère que la réponse est également en train de fonctionner.


@Dahiya_boy ci-dessous Répondre à obtenir une sortie qui n'est même pas dans mon tableau.


@Swift_prasad Vous pouvez renvoyer ma réponse pour le code net et net


3 Réponses :


0
votes

Vous pouvez le faire de cette façon: xxx


5 commentaires

@MO Abdul-Hameed Merci pour votre réponse, mais je reçois une sortie non pertinente.


@Swift_prasad Désolé, j'ai mis à jour ma réponse pour résoudre ce problème.


Analysez startDate et Enddate une seule fois, pas pendant chaque itération. Utilisez compactmap au lieu de mappe et ! .


@Sulthan merci beaucoup pour vos notes, vous avez complètement raison. J'ai mis à jour la réponse basée sur eux.


@Swift_prasad J'ai mis à jour ma réponse basée sur les notes de Sulthan.



0
votes

Vous pouvez essayer ci-dessous le code, cela fonctionne pour moi: xxx

espère que cela vous aidera :)


0 commentaires

0
votes

Si vous avez vraiment besoin d'utiliser Nspredicate code>, vous devez combler le tableau vers NSARRAY code> qui répond à filtré (Utilisation: CODE>

let result = arrayWithDates.filter { $0 >= startdate! && $0 <= enddate! }


0 commentaires