J'ai des milliers d'enregistrements de temps dans la liste triée. Ils sont au format suivant:Comparaison de chaînes C#
public static string mTimeFormat = "yyyyMMdd_HHmmss_fff";
La liste est triée par ordre chronologique. Je récupère une série d'enregistrements de la liste. La gamme résultante est entre 2 fois: t1 et t2 et il fonctionne très bien ...
string t1 = startTime.ToString(mTimeFormat);
string t2 = endTime.ToString(mTimeFormat);
List<string> results = fileNameList.FindAll(s => (String.Compare(s, t1, true) > 0) && (String.Compare(s, t2, true) < 0));
Maintenant, va encore ma comparaison/récupération travail si j'ajouter un nombre aléatoire à la fin du temps record ... Sur la base de ce que je sais sur les comparaisons de chaînes, cela va casser la comparaison ... Est-ce que ça va?
Um ... Vous ne pouvez pas en ajouter quelques-uns dans un cas de test et vous en rendre compte vous-même? Vous n'avez pas de version test de votre application et quelques données de test? Vous devriez vraiment apprendre à faire des efforts pour trouver les choses vous-même avant de poster. Que se passe-t-il si votre connexion Internet tombe en panne? As-tu juste à t'asseoir et à te tourner les pouces jusqu'à ce qu'il revienne? –
Oh, l'humanité!Comparer 'DateTime's en convertissant en chaînes est dangereux. Les structures 'DateTime' sont directement comparables. Lisez la documentation MSDN. – radarbob