Vergleich "I"Weird-String Sortierung, wenn der 2. String länger ist
string.Compare("î", "I ", StringComparison.CurrentCulture) -- returns -1
string.Compare("î", "I ", StringComparison.CurrentCultureIgnoreCase) -- returns -1
string.Compare("î", "I", StringComparison.CurrentCulture) -- returns 1 (unexpected)
string.Compare("î", "I", StringComparison.CurrentCultureIgnoreCase) -- returns 1 (unexpected)
Mit "i"
string.Compare("i", "I ", StringComparison.CurrentCulture) -- returns -1
string.Compare("i", "I ", StringComparison.CurrentCultureIgnoreCase) -- returns -1
string.Compare("i", "I", StringComparison.CurrentCulture) -- returns -1
string.Compare("i", "I", StringComparison.CurrentCultureIgnoreCase) -- returns 0
Aktuelle Kultur en-GB war. Ich würde erwarten, dass all diese Dinge zurückkehren würden. Warum verändert eine längere Zeichenfolge die Sortierreihenfolge?
Eigentlich - wenn ich 'i' nicht 'i', erhalte ich folgendes Ergebnis: \t \t string.Compare ("i", "I", StringComparison.CurrentCulture) gibt \t -1 string.Compare ("i "," I ", StringComparison.CurrentCulture) -1 \t int –
Aktualisieren Sie Ihre Frage mit diesen Informationen. – ChrisF
Hast du es mit anderen Kulturen versucht? – Simon