Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Library: Algorithmen (https://www.delphipraxis.net/28-library-algorithmen/)
-   -   Delphi Tausender- Trennzeichen in einem Zahlenstring einfügen (https://www.delphipraxis.net/6280-tausender-trennzeichen-einem-zahlenstring-einfuegen.html)

Daniel B 5. Jul 2003 14:38


Tausender- Trennzeichen in einem Zahlenstring einfügen
 
Hallo,
Delphi-Quellcode:
function ThouSep(sTemp: String; cTemp: Char): String;
var
  iTemp: Integer;
begin
  Result := sTemp;
  iTemp := Length(sTemp) -2;
  while iTemp > 1 do begin
    Insert(cTemp, Result, iTemp);
    iTemp := iTemp -3;
  end;
end;

procedure TForm1.Button18Click(Sender: TObject);
begin
  ShowMessage(ThouSep('87234723847234639491730297', '.'));
end;
Grüsse, Daniel :hi:

CalganX 21. Nov 2004 12:06

Re: Tausender- Trennzeichen in einem Zahlenstring einfügen
 
Von TypusMensch kommt eine Funktion, die selbiges auch bei Komma-Zahlen (Floats) erreicht. Diese Funktion kann sowohl mit Komma-Zahlen als auch mit normalen Integer-Zahlen verwendet werden:
Delphi-Quellcode:
function ThouSep2(sTemp: String; cTemp: Char): String;
var
  iTemp: Integer;
  komma:boolean;
begin
  komma := Pos(',',stemp) > 0;

  if komma = True then begin
    Result := sTemp;
    iTemp := Length(sTemp) -5;
    while iTemp > 1 do begin
      Insert(cTemp, Result, iTemp);
      iTemp := iTemp -3;
    end;
  end else begin
    Result := sTemp;
    iTemp := Length(sTemp) -2;
    while iTemp > 1 do begin
      Insert(cTemp, Result, iTemp);
      iTemp := iTemp -3;
    end;
    Result := Result + ',00';
  end;
end;
Von Mystic kommt aber noch der Hinweis, dass es mit der Funktion Delphi-Referenz durchsuchenFormatFloat noch einfacher geht:
Delphi-Quellcode:
function ThouSep2(s: String): String; overload;
begin
  Result := FormatFloat(',0.00',StrToFloat(s));
end;

function ThouSep2(r: extended): String; overload;
begin
  Result := FormatFloat(',0.00',r);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz