AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Punkt durch Komma ersetzen

Ein Thema von Mada · begonnen am 18. Feb 2003 · letzter Beitrag vom 18. Feb 2003
Antwort Antwort
Mada

Registriert seit: 31. Dez 2002
Ort: Bayern
33 Beiträge
 
Delphi 5 Professional
 
#1

Punkt durch Komma ersetzen

  Alt 18. Feb 2003, 10:20
Hi zusammen!
Habe folgendes Problem:
ich bekomme aus einem Variant einen string zurückgeliefert, der so aussieht.

2.45

mit dieser zahl muss ich nun mit den Nachkommastellen weiterrechnen. Aber so geht das ja noch nicht. Einen Integer darf ich wegen den Kommastellen nicht verwenden. Aber, um nun einen Float daraus machen zu können muss ich doch zuerst den Punkt durch ein Komma ersetzen, oder?
Also eine

2,45

machen.

Gibt es eine Funktion in Delphi, die das macht? In Perl kann ich irgendwie ein Schleifenkonstrukt bauen , aber in Delphi, da bin ich nun überfragt.

Weiß jemand wie das funktioniert?

LG,
Mada
Glaube an Deine Phantasie und Du kannst erreichen, was immer Du willst!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2
  Alt 18. Feb 2003, 10:23
DecimalSeparator heißt das Stichwort für die Hilfe.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#3
  Alt 18. Feb 2003, 10:33
oder so:

Delphi-Quellcode:
Function PunktToKomma(s: string):string;
begin
  result:=copy(s,0,pos('.',s)-1)+','+copy( s, pos('.',s)+1, length(s)-pos('.',s));
end;
Wobei DecimalSeperator die einfachere Variante ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4
  Alt 18. Feb 2003, 10:44
Und die bessere. Was wenn ein anderes Länderschema eingestellt ist?

Außerdem, wenn man es schon so macht, wäre wohl StringReplace angebrachter.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Mada

Registriert seit: 31. Dez 2002
Ort: Bayern
33 Beiträge
 
Delphi 5 Professional
 
#5
  Alt 18. Feb 2003, 11:13
OK, aber nochmal ne Frage zu dem DezimalSeperator.
Ich soll den Format folgendermaßen angeben.

"%" [index ":"] ["-"] [width] ["." prec] type

mein type ist ff

Also schreib ich
Format(vorhandeneZahl %f f: string; Ergebniszahl Args: array of const): string;

vorhandenen Zahl als einzulesenden string und die Ergebniszahl als ergebis nach der formatierung, richtig??
?? aber wie muss ich dann das % angeben? Dort erscheint bei mir ein Fehler. Sorry für die doofe frage, aber ich immer probleme, die allgemein notierten beispiele in direkten quellcode umzuwandeln, bwz diesen an meinen Quellcoe anzupassen....*schämmich*

(Mir fehlt wohl die Programmierübugn )
Glaube an Deine Phantasie und Du kannst erreichen, was immer Du willst!
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#6
  Alt 18. Feb 2003, 12:00
das klappt nicht:

Delphi-Quellcode:
var s: string
    f: real;
begin
  s:='2,54';
  f:=floattostr(s);
end;
Einsatz von DecimalSeperator:

Delphi-Quellcode:
var s: string
    f: real;
begin
  s:='2,54';
  DecimalSeperator:=',';
  f:=floattostr(s);
end;
  Mit Zitat antworten Zitat
Mada

Registriert seit: 31. Dez 2002
Ort: Bayern
33 Beiträge
 
Delphi 5 Professional
 
#7
  Alt 18. Feb 2003, 13:30
Hi,

danke an euch. Habs kapiert. und es geht.

Hab nur irgendwie durcheinander gebracht, wann eine Typendefinition vorliegt und wann man den Wert ersetzen muss.

LG,
Mada
Glaube an Deine Phantasie und Du kannst erreichen, was immer Du willst!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:00 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