Hi,
wir wollten ein Tool für ein Verzeichnisvergleich schreiben und haben folgende Merkwürdigkeit dabei gefunden:
ursprünglich wollten wir den einfachen Vergleich s1 < s2 nutzen, bekamen dabei aber fehlerhafte Ausgabe, letztlich führte dann der Stringvergleich mit CompareMethod.Text zum Ziel.
Aber zur Frage: warum liefert denn CompareMethod.Text andere Werte als CompareMethod.Binary, wenn man keine Buchstaben vergleicht ?
Im unserem speziellen Fall wird der Unterstrich unterschiedlich einsortiert:
Compare '1' to '_'
CompareMethod.Text : 1
CompareMethod.Binary : -1
a1 < s2: True
wir wollten ein Tool für ein Verzeichnisvergleich schreiben und haben folgende Merkwürdigkeit dabei gefunden:
ursprünglich wollten wir den einfachen Vergleich s1 < s2 nutzen, bekamen dabei aber fehlerhafte Ausgabe, letztlich führte dann der Stringvergleich mit CompareMethod.Text zum Ziel.
Aber zur Frage: warum liefert denn CompareMethod.Text andere Werte als CompareMethod.Binary, wenn man keine Buchstaben vergleicht ?
Im unserem speziellen Fall wird der Unterstrich unterschiedlich einsortiert:
Compare '1' to '_'
CompareMethod.Text : 1
CompareMethod.Binary : -1
a1 < s2: True