Zitat von
himitsu:
Delphi-Quellcode:
function AnsiUpperFirstChar(const S: string): string;
var
Temp: string; // <<<<<
begin
Result := AnsiLowerCase(S);
if S <> '' then
begin
Temp := Result[1];
Temp := AnsiUpperCase(Temp);
Result[1] := Temp[1];
end;
end;
String[x] ist und bleibt, auch weiterhin unter D2009/D2010, ein
ShortString und ein ShortString ist quasi die "alte" Version eines AnsiString, mit fester Speicherlänge.
Auch damit wirst du keine Freude haben, wenn mal Umlaute oder anderssprachige Zeichen am Wortanfang stehen. Besser wäre:
Delphi-Quellcode:
uses
Character;
function UpperFirstChar(const s: string): string;
var
Temp: Char;
begin
Result := ToLower(s);
if S <> '' then
begin
Temp := Result[1];
Temp := ToUpper(Temp);
Result[1] := Temp;
end;
end;