UperCase und LowerCase ändern nur die Buchstaben A-Z und a-z ... Sonderzeichen, wie unseren deutschen Umlaute, werden ignoriert.
Dieses ist daher zu erklären, daß Uper-/LowerCase ncht auf einen bestimten Zeichensatz (wie z.B.
ANSI) ausgelegt sind und es demnach diese Zeichen nicht unbedingt gibt.
Außerdem steht folgendes in der
OH:
Zitat:
Beschreibung
UpperCase konvertiert den Inhalt von S in Großbuchstaben und gibt einen Zeiger auf den String zurück. Bei der Operation werden nur 7-Bit-
ASCII-Zeichen zwischen 'a' und 'z' berücksichtigt. Sollen internationale 8-Bit-Zeichen konvertiert werden, verwenden Sie statt dessen die Funktion AnsiUpperCase.
Und wenn ich mich recht erinnere, dann rufen diese Funktionen auch nur UpperChar/LowerChar auf, welches nur reine BitOperationen sind, welche wiederum etwa so definiert sind
Delphi-Quellcode:
Function UpperChar(C: Char): Char;
Begin
//If (C >= $41) and (C <= $5A) Then Result := C or $20;
If C in ['A'..'Z'] Then Result := C or $20;
End;
// Char = Byte