Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: "." oder "," - Wie herausfinden?
29. Mai 2006, 10:43
Hallo,
ich hätte da noch eine universell verwendbare Funktion anzubieten:
Delphi-Quellcode:
function Translate(const s, sOld, sNew: String): String;
var
i, iPos, iLen: integer;
begin
SetLength(Result, Length(s));
iLen := 0;
for i := 1 to Length(s) do
begin
iPos := Pos(s[i], sOld);
if iPos > Length(sNew) then
Continue;
Inc(iLen);
if iPos > 0
then Result[iLen] := sNew[iPos]
else Result[iLen] := s[i];
end;
SetLength(Result, iLen);
end;
Testen kann man so:
Delphi-Quellcode:
var
ds, s: String;
e: Extended;
begin
ds := StringOfChar(DecimalSeparator, 2);
s := '';
while InputQuery('Check', 'Float', s) do
if TryStrToFloat(Translate(s, '.,', ds), e)
then ShowMessage(Format('%g', [e]))
else ShowMessage('bad value');
end;
Grüße vom marabu
|
|
Zitat
|