La chaîne revient de la base de données avec un format: '00/00/0000 'Je dois ensuite la comparer à une date que l'utilisateur a saisie dans le même format. Comment puis-je faire la conversion et comparer les deux dates?Comment puis-je convertir deux chaînes en DateTimes et les comparer dans VB.NET?
Répondre
Utilisez la méthode statique ParseExact sur la structure DateTime pour convertir la chaîne. Vous passerez également le format que vous voulez, soit jj/mm/aaaa ou MM/jj/aaaa selon le format que vous voulez (l'exemple de 00/00/0000 ne donne aucune indication sur le format qui s'applique pour vous).
Essayez quelque chose comme ceci:
String.Compare("00/00/0000", dateTime.ToString("MM/dd/yyyy"))
Mais peut-être une meilleure approche serait de le faire:
DateTime.Equals(yourDateTime, DateTime.Parse(databaseDateTime));
Vous pouvez utiliser
Dim dateA = DateTime.ParseExact(firstDateString, @"dd\/MM\/yyyy", Null)
Dim dateB = DateTime.ParseExact(secondDateString, @"dd\/MM\/yyyy", Null)
Dim areEqual = (dateA = dateB);
Si l'on suppose que le format de date est jour mois année. S'il s'agit d'un mois/jour/année, remplacez simplement dd et MM
Effectuez les opérations suivantes
Dim date1 = CDate(firstDateString)
Dim date2 = CDate(secondDateString)
Dim comp = date1 = date2
Quand vous dites comparer, vous essayez d'analyser si les dates sont les mêmes (le jour) ou dans un délai de quelques jours? Si pour comparer si les dates sont les mêmes, vous pouvez juste comparer la chaîne ou utiliser la date.equals (comme mentionné dans les messages avant celui-ci), si vous essayez de déterminer avec une plage, vous devrez utiliser la date comparer
Dim lDate1 As String = "29/03/2009"
Dim lDate2 As String = "30/03/2009"
Dim lPeriod As Int16 = 7
If lDate1 = lDate2 Then
'** Dates the same
End If
If Date.Equals(Date.ParseExact(lDate1, "dd/MM/yyyy", Nothing), Date.ParseExact(lDate2, "dd/MM/yyyy", Nothing)) Then
'** The same
End If
If Date.Compare(Date.ParseExact(lDate1, "dd/MM/yyyy", Nothing), Date.ParseExact(lDate2, "dd/MM/yyyy", Nothing)) > (lPeriod * -1) And Date.Compare(Date.ParseExact(lDate1, "dd/MM/yyyy", Nothing), Date.ParseExact(lDate2, "dd/MM/yyyy", Nothing)) < lPeriod Then
'** Within the period
End If
- 1. Comparer deux chaînes en ignorant certains caractères
- 2. Comparer deux tableaux contenant des chaînes?
- 3. Comment comparer les chaînes dans Bourne Shell?
- 4. comment comparer les deux date
- 5. Différence entre deux DateTimes C#?
- 6. sql pour comparer deux chaînes dans MS Access
- 7. Comparer deux XmlNodes en C#
- 8. Comment comparer les chaînes dans le cas ignorant sql?
- 9. Comparer deux dates - sans heure et seconde
- 10. comparer deux chaînes avec 'est' - ne fonctionne pas comme prévu
- 11. Comment comparer deux référentiels git?
- 12. Comment calculer le nombre de mois entre deux DateTimes?
- 13. Convertir ListBox.ObjectCollection en String array dans VB.NET
- 14. Convertir les champs de temps en chaînes dans Excel
- 15. Quels sont les types de chaînes les plus utilisés en C++ et comment les convertir?
- 16. Comparer deux valeurs
- 17. comment convertir cette ligne en vb.net
- 18. comparer deux tableaux de différentes longueurs et Afficher les différences
- 19. Comparer deux xml et imprimer la différence en utilisant LINQ
- 20. Dans Sql Server, comment convertir des chaînes binaires en binaire?
- 21. regex comparer deux nombres
- 22. Comparer des phrases (chaînes) dans AS3
- 23. Comment comparer 2 chaînes par ordre alphabétique
- 24. Convertir booléenne en entier VB.NET
- 25. comment comparer deux fichiers et extraire la différence?
- 26. Comment convertir des chaînes en entiers en Python?
- 27. Comparer les valeurs de deux structures en C#
- 28. Isprefix est-il plus cher que de comparer deux chaînes en C#?
- 29. Comment puis-je comparer deux fichiers en contexte complet?
- 30. Comment comparer les valeurs de deux contrôles avec un déclencheur?